Since I noticed no one has really mapped out and explained all of the developer.exe's features, I'd thought I'd do it myself. I finished the change galaxy menu today, I'll add the rest as I have time.
Tested on Diplomacy 1.21/1.31 against normal/hard AI on a 1v1 map. Most remains accurate for Rebellion.
The Developer.exe is a modding tool that can be found in your main Sins of a Solar Empire folder along with the regular game.exe. There is one for each version of Sins you have, and are named Sins of a Solar Empire [Version] Dev.exe. They are updated automatically with the base game via Impulse or Steam.
Most features of the Developer are accessed through a special menu that is brought up by pressing [ctrl+shift+.]. Their effects are defined below. All the commands should work the same on all versions of Sins, though some features may not be present in all versions.
For Rebellion, the above still holds true, but the install directory is in your steamapp folder. Also the dev.exe has its own mod folder in Rebellion, so for testing mods you must start the dev.exe once to create the mod folder, then move any mods you're working with to the newly created dev mod folder.
In addition to the commands that are defined below, the Developer.exe has several built in special features that are always active are a big help with testing mods. These include.
Show Errors and Logging: On starting the Developer.exe for the first time, the game will rewrite your settings file. Your achievements will be okay but most other information, including hot keys, player name, resolution settings etc. all return to default, so make a back up of your user/diplomacyuser files so you paste them back into your App Data Settings folder when you are done. While this is a pain, this will allow the Dev.exe to display any errors it encounter in game right when it encounters them, which is crucial for debugging mods. Also the Dev generates a log of these error messages and tons of other useful info in your AppData debug folder (the log name is displayed on the Dev menu bar). These two features are really the only way to get useful data about crashes, so learn to use them.
Update: As of Rebellion version 1.84, the dev.exe has its own set of setting, camera and UI mapping files. It will no longer override your standard settings file. Earlier versions and expansions will have the dev.exe replace these files.
File reloading: The Dev.exe supports the reloading of several file types in game. This means if you change one of these supported file types in a mod, the game will immediately reload the file with any changes on the spot. For things like entity weapon visual settings, textures and other files where you really have to see the effects in the game engine, this saves you a ton of time that would have been wasting by exiting and relaunching Sins every time you had to make a change. Supported file types include (though there may be others) all entities, textures (though some visuals like tech trees and most UI are only generated at the beginning of the game and thus this doesn't help you), meshes, and string files. Note .manifest files do not reload, so if you need to add an entirely new file you still need to exit the game.
Change Galaxy Menu [a]
Note: Most if not all commands in this menu will result in a desync if used in a multiplayer game. You can still play the game but spawned units and the like will not be visible to the other player. Things like Setup Quick Play and Overrides may work better, but try to have you and your friends apply them at the same time to try and avoid problems.[a] - Setup Quick Play: Triggers a variety of factors for faster gameplay. All build times are set to zero, planet slots are ignored, all research is given (including artifacts), 1000000 of each resource is given, and game speeds are increased. Essentially a one click trainer mode.
[b] - Overrides Menu: Contains several useful toggle options.
[c] - Change Entity Menu: Contains several useful commands that will be applied to a selected entity or entities.
[d] - Change Player Menu: Contains several options to manipulate player settings.
[e] - Change AI Menu: Options to adjust the AI. Some options and perhaps this whole menu is for Diplomacy only
[f] - Spawn Entity: Allows you to spawn capitalships, frigates, planet bonuses, cannon shells, or debris for a selected player. Options are populated from the player.entity file. Very useful for spawning specific units or fleets to test.
[g] - Single Step: Allows you to move the game by one frame while paused.*
[h] - AutoSingleStepRate: Sets the game to automatically do x amount of single steps while the game is paused. Essentially puts the game in slow motion for low values, begins to look like lag for higher ones.*
[i] - Take Screenshot on singlestep: Toggles whether you want the game to take a screenshot with a manual single step.*
[j] - Change Build Speed: Switches the build speed setting in game.
[k] - Change Culture Speed: Switches the culture rate setting in game.
[l] - Change income rate speed: Switches the income rate setting in game.
[m] - Change Research Speed: Switches the research speed setting in game.
[n] - Change physics Speed: Switches the physics speed option in game.
[o] - Change Fleet Supply Scalar: Switches the fleet supply setting in game.
[p] - Spawn Random Event: Lets you spawn most of the random events if you have the Stellar Phenomenon DLC. Only the Partisans and Open Rebellion events are unavailable, but the new culture flip option in change entity allows you to test that one.
Overlays Menu [b]
Note: All commands in the Overlays section are toggles for windows that show various statistics. Some do overlap and can be difficult to use all at once. I assume it is safe to use these in a multiplayer game.
[a] - Show FPS: Brings up a one line window in the upper left behind the Dev commands window. Displays your frames per second, good for performance testing.
[b] - Show Profiler: Not entirely sure what this is for. Brings up a window in the upper left (behind Show FPS) that says something about nodes, worst time and call count. Since I had zero nodes while testing I was unable to see what it does.
[c] - Show Memory: This gave me a one line window where Show FPS was with a red error message saying "No Memory Info Available". Thus I was unable to figure out what this displays. If this function works on someones machine please leave a post detailing the statistics it displays.
[d] - Show Entity Type Counts: A very useful large window on the middle right that displays the number of each type of entity (stars, frigates, research, abilities, buffs etc.) currently in the game. Can be used for map testing, AI analysis, ability testing, anything where the number of an entity type is important.
[e] - Show Times: A small window in the upper left below show FPS and in front of Show Profiler. It seems to display the number of real and game (non-paused) seconds that have elapsed, as well as something about "Queued Ticks"(?).
[f] - Show Network State: Creates a large menu in the upper left below show FPS and in front of Show Profiler and Show Times. Gives ICO and LAN status, server status, and some statistics about each player like latency, Sim Updates etc. Must have for network/lag troubleshooting.
[g] - Show Commands: Toggles a very large window on the right over the Show Entity Type Counts menu. Seems to count the number of times a large list of commands (Ping, purchase capitalship level etc.) have occurred in the current game.
[h] - Show Client Update Status: No window appeared after enabling this. I suspect it may only work in network/ICO games.*
[i] - Show Effect Status: Brings up a window in the central upper part of the screen that counts the number of all categories of various effects, the number of those effects that have been terminated, and most importantly the memory usage of each category. Useful for identifying which effects types are slowing your mod down.
[j] - Show Particles Status: Brings up a large window in the upper left below FPS and in front of all the previous commands. Shows a lot of statistics about individual particle effects, including which ones are actively being rendered, a count of the current particle and simulation pool, which particles are using the most memory, and the total number of each specific particles both on screen and generated gamewide. Somewhat overlaps show effects status but since the window background is partly transparent they should be useable together.
[k] - Show Bloom Composition Steps: Brings up four red boxes in the upper left screen in front of everything. It seems to be a mini-rendering window that shows just the bloom on your current screen at different resolutions (if you have it enabled). I'm sure its uses are obvious to someone who knows what exactly bloom is and wants to mod it.
[l] - Show Shaders: Brings up a window in the middle right above Entity Type Counts and Commands. It shows all the shaders being used by the game and the "technique" they are being used with.
[m] - Show Direct3D setup: Toggles a menu in the very upper right in front of everything except show shaders. Gives your resolution, device type, and other statistics that would presumably be useful for Direct3D troubleshooting.
[n] - Show Textures: Brings up a large menu starting from the upper left that shows the total amount of loaded textures and the amount of memory they are using. It also shows the "worst textures" that take up the most memory (the Advent Starbase seems to win by a large margin) and some statistics about them. Extremely useful for optimizing textures.
[o] - Show Sounds: Toggles a menu in the upper left hand corner that oddly displays CPU usage as well as sound channel information, the number of sounds currently playing, and the channel and volume of each sound.
[p] - Show Music: Brings up a menu in the upper right behind everything but show entity types and commands. Show the currently playing track, the current action and emotion levels, some statistics that determine these, and the track playing at each location you have visited and how many seconds of each track that have already played. A must have for configuring custom music, or just trying to understand how the music system works.
[q] - Show Entity Create Counts: Brings up a window across the entire left screen that shows the number of each individual entity created so far in the game, starting with the ones that have the most. Note that this can cause an extreme performance decrease (I went from 60 fps to 10) while this is shown, so you should only use it while paused. Very useful for tracking a specific entity in the game.
[r] - Reset Entity Create Count: Okay, this the one thing in this menu that is not a toggleable window. This resets the data shown in Entity Create Counts, so if you are only interested in tracking entities after a certain point in game (or you want to use that tool with a decent fps) this could come in handy.
[s] - Show Market Status: Toggles a menu in the upper right that displays most of the market variables, such as the state, crash and boom threshold of each resource, when the game will check again for a crash/boom etc. If your mod changes the market settings or you are curious to how this system works, you probably want to use this quite a bit.
Entity Info Menu [c]
Again everything in this menu is a toggle, though some change things in game instead of create windows.
[a] - Show Entity Internals: Creates a window in the lower left that displays the internal entity name, owner and other information depending on the entity type, including HP, Mesh, and most importantly all buffs that are effecting the entity. Extremely useful for any entity mod that adds entities, and vital for ability modding.
[b] - Show Spatial Sphere: Creates a blue sphere around the entities with length, width and height axes expanding from the center point of the mesh. I don't think the game uses this internally but may be useful to those having trouble getting their mesh to appear correctly in game.
[c] - Show Bounding Box: Creates a blue box around the selected entities that seems to show the "hit box" the game uses for determining collisions. Good if you are having fleet formation troubles or ships clipping into one another.
[d] - Show Entity Shield: Makes the shield mesh appear for the selected entities if present.
[e] - Show Far Orbit Sphere: Can only be used on a planet or star entity. Creates a blue sphere around the range of the outer boundary of the gravity well.
[f] - Show Movement State: Creates a small window above the selected moveable entities that gives some information about their movement variables. Not entirely sure what they mean at this point.
[g] - Show Movement Path: No noticeable effect.*
[h] - Show formation connections: When used on a group of entities carrying out movement orders, white lines are generated from all other group entities to the central group entity. Seems to indicate what the group centers on.
[i] - Show fleet connections: Same as show formation connections, except with fleets instead of groups.
[j] - Show Physics - Velocity: Creates a small box above selected moveable entities that displays a variety of physics information including speed, distance to move order target, turn rate, distance at which it will start to slow down etc. Also creates a white line to destination and a yellow lines on the various axes when turning.
[k] - Show Physics - Destination: Generates a red line from all selected moveable entities to its destination, which appears as a red sphere. A must have for pathfinding difficulties.
[l] - Show Physics - Other: Generates a dark blue sphere around the entity's center and possibly many other spheres of different colors that change size as the entity moves. I am unsure of what they represent however.*
[m] - Show orders: Creates a small window over the selected entities that display what order type it is carrying out, the internal mission type, auto attack range etc.
[n] - Show Target Lines: Displays a flashing line from the selected entities to their current target, with a small sphere around the targets center. Warning, may cause seizure.
[o] - Show Pre Auto Attack positions: Generates yellow lines from the selected entities to the position they will return to after carrying out an auto attack order. Also may generate a white sphere with groups of entities but I am unsure of what it represents.
[p] - Show Hangar Points: Generates a small red, cyan and green line along each axis with its center at a valid hangar point for the selected entities. Good to ensure your fighters are spawning from the correct positions.
[q] - Show Weapon States: Toggles a window in the upper left that displays the potential and actual DPS of a selected entity, the number of weapon points that can fire in each direction for each weapon, and the total number of targets the entity can fire on and the maximum DPS for each direction. Vital for adjusting weapons.
[r] - Show Weapon Ranges: Creates a red sphere around targeted entities that represents the weapon range of the weapon the entity uses for close in distance. This is useful for seeing how many targets and entity can hit without moving, but doesn't help with fine tuning ships with different weapon ranges for different weapons.
[s] - Show Asteroids: Creates a red dot at the center of each aesthetic asteroid around a selected planet entity. Resource asteroids do not count.
[t] - Show Dust Clouds: Creates multicolored sphere around the area covered by dust clouds for the selected planet/star entity. Note they may be significantly outside of a gravity well so you may need to rotate your camera or zoom out to seem them.
[u] - Show Collision Bubble: Possibly creates a yellow sphere around selected entities. I am unsure of what it represents since it is substantially larger than the collision boxes for those units, it may be the area at which the game will start checking for collisions.*
[v] - Show Point of Approach: Creates red or green cylinders around the selected units extending to a dot of the same color, usually at the destination. I am unsure of exactly what this represents.
[w] - Show Distances: A very useful function that will display red text in the center of the screen that shows the distance between two selected entities.
[x] - Show Entry Vehicle positions: I believe it has something to do with the entry vehicles that appear when you colonize a planet, but I have yet to test.
[y] - Show Entity ID: Creates a small window above the selected entities with their ID number in it. This is unique to each individual entity in each game, and can be used to see if you are looking at say the exact same fighter or not.
[z] - Show Mesh Points: Generates small red, cyan and green lines along each axis with its center at a valid hardpoint (weapons, exhaust, ability, hangar etc.) for the selected entities. Exactly which way these lines go indicates orientation. Useful for getting your hardpoints in the right place or seeing which hardpoints are available for a given mesh.
[A] - Show ShipBuilder Info: Creates a menu on the upper left that displays which each shipyard for a given planet/star entity and any build orders currently queued, among other things.
[B] - ShowClosestAdjacentPlanetInEmpireThatAreColonizeable: Creates a small window at the nearest planet(s) to your empire that don't have a owner with their name inside.
[C] - ShowClosestAdjacentPlanetInEmpireThatAreAttackable: Creates a small window at the nearest planet(s) to your empire that are owned by hostile factions.
[D] - ShowAllThreatenedFrontierPlanetsInEmpire: Creates a small window at all of your planets that have a phase lane connecting to a planet/star entity you don't control. The closest enemy planets to your empire are also displayed.
Player Info Menu [d]
[a] - Show Mission Cue: Causes a window to appear at the top of the screen when looking at an AI player's diplomacy screen (where missions, treaties etc.are at). A bit misleading, it seems to show information about what actions the AI is thinking of taking, rather than information about missions the AI gives to the player. Most important are the priority the AI gives to things like exploring, colonizing, attacking etc., as well as variables that seem to effect this. Very useful insight into how the AI operates.
[b] - Show Fleet Comparison: Displays a window center screen that shows statistics for the entity's fleet broken down by armor type.
[c] - Show Combat State: Toggles a small window in the upper left that displays a sort of threat indicator for the selected entities. I.e. whether there are units nearby, all clear, losing etc.
[d] - Show Economy: Toggles a small window in the center of the screen that displays the credits/resources of the owner of the selected entities. Also shows some variable called "value", but I have no idea what it represents (its not the value of the selected entities).
[e] - Show Spending: Toggles a small window in the upper right that displays information about the AI's current spending when selecting an entity that belongs to that AI player. Human players always seem to have values of zero.
[f] - Show Build List: Toggles a series of windows that displays what the select entity's owner is building, researching etc. Also displays which kind of AI the player is (researcher, economic, aggressive etc.) Very useful for AI analysis.
[g] - Show Research: Seems to show the number of each lab the selected entity's owner has and how many research subjects are queued up.
[h] - Show Diplomacy AI: I got a crash to desktop selecting this option. It seems many of the Diplomacy related options no longer function.
[i] - Show Pirates: Just seems to toggle a small window at the top of the screen that counts the number of pirate raids still in progress.*
Rendering Menu [e]
[a] - change skybox: A command that allows you to specify which skybox to display. Names seem to be populated from the skybox.manifest file and you can select skyboxes that do not normally appear at a given star.
[b] - Show Greenscreen: Toggles a green screen that replaces the skybox/background stars and removes skybox specific lighting. Great for examing textures without interference from extra lighting or for hard core machinima makers who want to edit in their own background.
[c] - Show All Entities: Similar to "All Entities Detected" in the Change Galaxy Overlays menu. However, there are two main differences. First, while you can see all the entities/planets etc., they do not get counted as explored, which means it won't break your scouts on auto explore, but at the same time you won't be able to give move orders to planets you haven't naturally discovered yet. Second is that this command will reveal hidden entities like planet bonuses and artifacts that would normally require exploration upgrades. Also this naturally means the CPUs won't have access to this information for you cheaters out there.
[d] - Force Mesh Visible - Star: When set to true, prevents stars from being hidden by their icon. In other words, no matter how far you zoom out, you'll still see the star mesh rendered instead of the icon. If combined with Force Mesh Visible - Planet, it will force the game to show the galaxy per scale, and if you add in "Other", all objects in the game will render to scale. Great for amazing screenshots, though on maps with lots of objects you can get performance problems.
[e] - Force Mesh Visible - Planet: When set to true, forces planet meshes to always render and disables icons. See Force Mesh Visible Star for more detailed analysis.
[f] - Force Mesh Visible - Other: Forces any entity that is not a planet or star to always render and disables their icon's. See Force Mesh Visible Star for more detailed analysis.
[g] - Show bottom bar: Toggles the menu bar at the bottom of the HUD.
[h] - Show top bar: Removes the top bar of the HUD. Note this does not include the mini underground window.
[i] - Show Chat Window: Toggles the chat window.
[j] - Show Playback Window: Had no effect in game, may need to be in replay mode.*
[k] - Show Linear Path Effects: Generates target lines during at least weapon effects, showing the path of the object. Unsure if the different line colors represent anything.
[l] - Show Elevator connections: Generates white lines between all planet elevators (cities) of a selected planet entity. This roughly corresponds to the path planet traffic follows on the planet.
Windows Menu [f]
[a] - Show Window Areas: Toggles a bunch of multi-colored squares around each window area (usually buttons or HUD display). A lifesaver if you are tweaking the UI but not useful for much else.
[b] - Show Window Status: Toggles a large window on the left that seems to indicate which window areas are in current use, possibly among other things. Debugging tool if one of your buttons doesn't seem to work.
[c] - Show Window Overlay: Toggles a series of green and purple boxes over most of the playing area. Not exactly sure what exactly it is used for.
[d] - Show Window Tab Order: Produced no visible effect.*
[e] - Show Brushes Under Cursor: Toggles a window that displays the name of any brushes (usually icons) you cursor is over in the upper right, as well as some information such as the brushes' pixel box location etc.
[f] - Show Brushes Rendered: Toggles a large window on the right that displays data about the currently loaded brushes.
[g] - Show Frontend Status: Toggles a small window in the upper left that gives some information about "screens", but I'm unsure of what it means exactly.*
[h] - Force Escape Menu Network Status Action: Command that produced no effect in Single player. I suspect you need to be online or on LAN for this to work.*
[i] - Force Show Load Screen: Command that immediately takes you to a load screen. Press i repeatedly to get back to the game.
Camera Menu [G]
[a] - MinDistanceDisabled: Allows you to zoom in all the way to the center point of a model, regardless of the entity mindistance property.
[b] - Show State: Toggles a window in the upper left that displays detailed camera information, including position, number of rendered meshes and planets, etc.
[c] - Show Stored Position: Did not produce any effect, even after saving a camera position. More testing needed.
[d] - Show Zoom Position: Displays colored spheres that seem to indicate where the camera moves towards when you zoom in.
[e] - Store Position: Command that saves the current camera position. Not really sure how to interact with it though.
[f] - Reset Angles: Command that returns the camera to the default angle.
[g] - Shake Camera: Not sure what this did, someone with more 3D experience will need to figure it out.
* - Means I'm reasonably certain of the effect but wasn't able to do a thorough test.
Well you get the lock on the zoom to cursor when you hold down ctrl, so that's normal. Perhaps one of your keys isn't working? Try using the other shift key. And you're sure you're in the dev.exe (Should be in windowed mode, and have a menu bar that has the path of a game log?
Thanks again for your reply.
I am at a loss. Have tried all you said and get the same result. (with the lock symbol on the Zoom to Cursor, this icon also shows on the cursor). There is otherwise no change. I may have to forego the option, but it all seems odd.
Just a few small things. I think all keys are working as I have no problem writing or using other ctrl\shift combinations. The interface in Rebellion is slightly different from all previous versions. All the other versions have no gap between the stack symbol and the menu, but in Rebellion there is a gap after the stack symbol followed by my e.mail address and then the menu in the HUD. Is this as it should be?
this should really be stickied. why isnt this stickied. goafan. bug the devs to get it stickied.
When using the ctrl\shift\. not only does the lock symbol show on the zoom to cursor (and the cursor show the icon for the zoom to cursor), but the credits and resources jump to ten times their worth? I checked the integrity of the files and they were fine. I also uninstalled the game and re-installed, but still having the same problems.
OKAY, I have the solution.
I didn't know that to access the dev.exe the game had to be started from the root file first. I thought that when the game was started normally (from the shortcut) it was starting from the root file.
My apologies if I have misunderstood your instructions.
Thanks for your help.
Glad you figured it out. This guide was written for diplomacy where you are in the main director a lot more often. I'll try and clear up the instructions for steam when I add the next section.
This is actually another shortcut. If you hold the shift button you buy/build anything in quantities of 5 (or any multiple if you edit your settings file), including the black market resources. The price it shows it the cost for 500 resources instead of 100.
There's a link here on several stickied guides. Its not a huge deal though, the people who need it hopefully know its here...
The stickies really need to be cleaned up...some of those probably shouldn't be there or should be redone...and some things need to be added...
I usually browse the forums and point out to Yarlen a few threads that need to be stickied. This thread is now one of them.
How i can use devs exe?, i do double click on devs.exe but i get an error. Can any help me please?
i want use rebellion devs.exe
Skip through the errors.
The first time you run the dev.exe, it will have to reset your settings and keyboard shortcuts (unless you manually change the version number in those files)...this only happens the first time you run the dev.exe or any time immediately after running the normal game (which will reset the settings again after running the dev.exe)...this "error" is harmless and as Volt said you can just skip it (I think there might be two pop ups, not sure)...
If you don't want to lose your settings, manually change the version number in the settings file and keyboard shortcuts...I can't remember the exact numbers but if say, the settings file is version 162 for the normal game, then it will be 1162 for the dev.exe (simply add a one in front of it)...
For diplomacy I just keep back up versions of setting files for both the normal game and the dev.exe. When I switch between one I delete the settings file, copy my back up and rename it to the settings file to get around it. I'll do the same thing with Rebellion once I really start modding it and the version numbers stop changing as much.
Well, since I play exclusively in the dev.exe...
I've been meaning to test, does that work for multiplayer? Assuming you don't use any of the commands, I tried to film a friends machinima in the dev.exe but spawning thing of course gets an instant desync. Notice things like the FPS display do work but I was only playing with people in the dev.exe.
Well, back when I was a super modding n00b, I did LAN with 2 computers to test things...
Then I went from super modding n00b to just modding n00b when I learned there was the dev.exe and that you could run multiple instances of it on the same computer...and so, I did LAN games using 2 instances of the dev.exe on the same computer...
Then I went from n00b modder to Seleuceia the No One Knows Who You Are modder, and learned you could just switch players in the dev.exe...
The point is, Seleuceia is a tard 90% of the time...and back in the day, around the time of Project Equilibrium, I know you could LAN with yourself on the same computer using the dev.exe...
I would assume you can now but I haven't actually tried it...
But have you tried actually going on ICO and seeing if it works with people not running the dev? It would be great if the power users could do that so they'd at least know when they desync.
Early on, when I was new and didn't know that the toggle "Window Mode" existed, I used to play with the dev.exe on ICO. Most of the time, I would eventually minidump. That's why my ICO record is so bad.
Oh, this thread is stickied now. My fault.
You see, I would have just tried that after I read your post, except that my computer's AC adaptor died and so I, for all intents and purposes, do not have a computer...
When I do, I might quite possibly get around to it...
It works, but only for a time. Then it minidumps.
It would be nice if you make an description for errors like this: https://forums.sinsofasolarempire.com/439646
But, thank you
Sadly I don't claim to know exactly what causes the most cryptic ones, but next time I personally run into one and fix it I'll add it.
Where is the log for Rebellion? I can't find a folder for steam Appdata...
There are many great features available to you once you register, including:
Sign in or Create Account