Difference between revisions of "Source Code"
(→some code: GameContext.cs initialising game) |
(It's possible to compile the game with Visual Studio Express 2012. No further stuff of programs are needed. Mention that the compiled exe is then in \SupremacyClient\bin\Release.) |
||
Line 138: | Line 138: | ||
|} | |} | ||
+ | |||
+ | == Visual Studio Express 2012 == | ||
+ | |||
+ | It's possible (and standard) to compile the game with Visual Studio Express 2012. No further stuff of programs are needed. Mention that the compiled exe is then in \SupremacyClient\bin\Release. | ||
== Visual Studio Express 2013 == | == Visual Studio Express 2013 == |
Revision as of 15:24, 27 April 2014
Contents
Source Code
http://guganeshan.com/blog/setting-up-git-and-tortoisegit-with-bitbucket-step-by-step.html
semi-official
latest versions were made out of https://bitbucket.org/Bloodwurm/BotF2dev/commits/all
official
- last source code https://bitbucket.org/mstrobel/BotF2/overview (Visual C# Studio 2010)
- Mike's Post: build in VS2010 with .NET 4.0. You may need the C# Async CTP. http://botf2.star-trek-games.com/viewtopic.php?p=70790#p70790
- http://botf2.star-trek-games.com/viewtopic.php?p=70781#p70781 BotF2.Game.GameEngine is where you'll find most of the game logic. That's where most of the turn processing happens.
- The BotF2Core project is where you'll find the foundation of the game.
- BotF2Service is just the game server (all the important bits it interacts with are in BotF2Core).
- BotF2ClientComponents is UI infrastructure.
- BotF2UI and BotF2WPF are older UI infrastructure stuff, much of which has been phased out and replaced by newer and better stuff in BotF2ClientComponents. The most interesting stuff in BotF2UI is GalaxyGridPanel, which draws the galactic map. It also has the spinning planet views.
- BotF2.Xna is where the XNA/3D stuff is located--it's not used heavily yet, but it has some effects for the invasion screen, a newer star renderer, a 3D spinning ship renderer, etc.
- BotF2.Scripting is an expression language parser/compiler.
- BotF2Client is the main graphical client and has most of the game screen implementations.
- old source code can be taken from here: http://BotF2.codeplex.com/ (last upload from MStrobel at 03.01.2011)
Changes
see here or https://bitbucket.org/mstrobel/BotF2/commits/branch/default
some code
where | Folder | File | Function | Date | Description | Custom1 | Custom2
|
---|---|---|---|---|---|---|---|
S-Core | Game | GameContext.cs |
initialising game |
||||
S-Core | Game | GameEngine.cs | DoProduction(GameContext game) |
Raw Materials, Deuterium, Dilithium is collected cross over all colonies and used by all colonies |
|||
S-Core | Game | GameEngine.cs | DoShipProduction(GameContext game) | ||||
S-Core | Orbital | Shipyard.cs | GetBuildOutput(int slot) | 2014-01-15 |
just selects output (active?) and bonus (BonusType.PercentShipBuilding), since 2014-01-15 also case PopulationRatio or IndustryRatio |
||
S-Core | Universe | Colony.cs | GetProductionOutput(ProductionCategory category) |
see last line, too !
float moraleMod = _morale.CurrentValue / (0.5f * MoraleHelper.MaxValue); baseOutput = (int)(moraleMod * baseOutput);
float moraleMod = _morale.CurrentValue / (0.5f * MoraleHelper.MaxValue); baseOutput = (int)(moraleMod * baseOutput);
|
|||
S-Core | Universe | Colony.cs | planet.HasFoodBonus (OutputModifier) |
if (planet.HasFoodBonus) modifier.Efficiency += 0.15f; |
|||
S-Core | Universe | Colony.cs | planet.HasEnergyBonus (OutputModifier) |
if (planet.HasEnergyBonus) modifier.Efficiency += 0.15f; |
|||
S-ClientComp | Views\GalaxyScreen | GalaxyScreenView.cs | GalaxyScreenView() | GalaxyView Hotkeys Definition (see Hotkeys) |
Visual Studio Express 2012
It's possible (and standard) to compile the game with Visual Studio Express 2012. No further stuff of programs are needed. Mention that the compiled exe is then in \SupremacyClient\bin\Release.
Visual Studio Express 2013
use latest version (Express version is free) http://www.visualstudio.com/downloads/download-visual-studio-vs#d-express-windows-desktop
Visual C# 2010
build in VS2010 with .NET 4.0. You may need the C# Async CTP.
.Net
you should use latest .Net-version (2014: version 4.5.1)
XNA
"Could not load file or assembly 'Microsoft.Xna.Framework.dll' or one of its dependencies. The specified module could not be found."
- suggestion by reg: go to \Resources\Models and rename the "Models"-folder to "Models-SetOffline" or something else (if building a ship no model is shown -as it is to most of the ships- but otherwise the game could work fine)
This suggests the problem is with your XNA installation. The game uses XNA to display the 3D ship models in the shipyard. There's no way to disable the models so XNA wouldn't be needed. So to be able to play the game, i'd advise to uninstall XNA, then install the latest version.
Download link: http://www.microsoft.com/en-gb/download/details.aspx?id=20914