Brad Wardell's Blog


Beta 4D Notes

Published on Friday, December 9, 2005 By Brad Wardell In Galactic Civilizations II

Notes for v0.79 BETA Release

+ Ethics Choice screen is now in. When Xeno Ethics is researched, players MUST choose their ethical alignment.
+ Bunch of new random events are now in
+ Approval rating adjusted
+ Thumbnails auto generate, no more missing thumbnails we hope in the shipyard
+ Minor races are now in.
+ Pirates are now in
+ Bunch of new weapon sound effects added to project and integrated into the various weapons
+ Several dozen new models for AI ships added to project and code updated to support those models.  Hopefully you’ll be able to notice this as it took quite a bit of time.
+ Good & Evil technologies added to the game
+ Fixes to the tech tree
+ Tweaks to the screen text and other language stuff
+ Tweaks to improvements and ship types and other things for more balance
+ AI more sensitive to cultural take-over (however doesn’t work until we fix GetSectorsOwned()
+ Tweaked  AI ship designs to be more lethal
+ AI now tries to merge as many ships as it can every turn (even if they’re in fleets) to create larger fleets. Seems to work well.
+ Fixed the IsDefendedAdequately function.  AI still not very good at defending planets though.
+ Major change: Completely rewrote the way the AI chooses which ship to build. Different approach entirely.
+ Starbase manufacturing modules now work. We will need to tweak these though as they’re very powerful.
+ Fixed a bug where influence victory was not waiting until later in the game to start checking.
+ Increased the size of galaxies.  A Gigantic galaxy is now 18x18
+ Tweaked the algorithm for tight clusters and loose clusters.
+ Made nicer planets slightly more common.
+ Moved LoadDataDefinitions() into a thread. The result of this is that when you start the game, you’ll get the game screen MUCH MUCH quicker. However, you’ll now wait a few seconds for the start game button to show up.  What we need to do in the final version is have a graphic that says "Loading" that disappears at the same time as the start game button appears.
+ AI values the attack value of ships in orbit as much as the defense value when it comes to defending a planet.
+ Tweaked how much research costs based on the size of the galaxy.  This way, playing at a larger sized galaxy doesn’t end up with techs coming every turn due to having tons of planets.
+ Added more in-depth analysis on the reports screen as to why the AI hates you or loves you or whatever.
+ Added to the ship design screen a if(!pCompDef)   assert("Missing Component Definition!!!"); since I kept seeing this come up.
+ Starbases should report what % a module does.  Generally speaking, UNITS UNITS UNITS.  Free floating numbers are the devil. There should never be a +5. It should be +5% or +5tp or +5pc or whatever it is added 5 to.
+ Piecharts in United Planets and Foreign UP Window
+ Foreign UP listing # of votes per player
+ if a tech will never be completed, it'll now say "Never" instead of "1000 weeks"
+ Fixed bug when aliens wanted to trade techs with you (techs got switched around)
+ Espionage Working
+ Fixed bug in Full Battle Report screen where certain data was placed in the wrong column
+ Fixed bug where players could disband AI ships and fleets
+ Implemented pie graph in United Planets screen
+ Fixed many ALT-TAB-related crashes
+ Color-coded the civs in the United Planet screen
+ Fixed a bug that caused HP in fleet battles to not accumulate correctly
+ Starbases will no longer cause a ship to come out of sentry mode
+ Implemented the Ethical Alignment selection screen
+ Adjusted number of space debris in a full battle scene
+ Fleets will now attack the weakest ship with weapons first
+ Removed references to MPoints in End Game Summary screens
+ Fixed a bug that caused various screens to appear over top of the main title screen
+ Fixed a bug that caused a long pause before a full battle started
+ Fixed a bug that caused damage sound effects to be played when the damaged ship was off screen
+ Full Battles now use the correct planet texture
+ fixed crash when playing with a random galaxy size
+ fixed bug that doubled starbase bonuses
+ If there is no ship selected when the player's turn starts, it should now look for a moveable ship
+ Random events
+ Minor Race Wnd
+ added Go Home option to rallypoint wnd when in assign mode for ships
+ moved Prefs.ini to My Documents folder
+ made InitializeGalaxy create Mods folder (mods are still not read in)
+ fixed over 1000 memory leaks.
+ Implemented 3D planet and star scene in Minor Race window
+ Set minor race’s homeworld in galaxy creation
+ Disabled text entry field in the "New Government Available" dialogs
+ Fixed an ALT TAB crash if Explosions were turned off and you did a full battle
+ Fixed a bug where if explosions were turned off the damage shown in the ship icons during the battle didn’t show up
+ Changed PlanetDetails screen to use Cari’s new FormatPopulationString function
+ Added explosions to generic weapon shot for invasion screen
+ Fixed a bug in the number of shots a ship fires during a battle
+ Fixed an ALT-TAB problem when fleets are built
+ Added tooltips to help buttons in Ethics window
+ If you turn off explosions in Options menu, the post-full battle explosion on map will not display
+ Starbases will no longer cause a ship to leave sentry mode
+ Fixed a potential bug in the number of shots fired
+ Fixed the order of adding and removing references in processes with nodes
+ Implemented the Ethical Alignment Choice dialog
+ Added ethical alignment to saved games
+ Implemented Ethical Alignment data and slider on CivManager screen
+ Implemented Ethical Alignment in classCivilization
+ Tons of changes to starbase modules
+ Tweaks to the tech tree (some new ones added, some removed)
+ Good & Evil Techs tweaked
+ Fixed bug in Civ Manager so that Ships that were not going to be built would read as "Ship Name ( Never ) "
+ Fixed memory leak in resource graphic
+ Implemented Rally Button on fleet context window
+ Added missing screens to UIBeginGameHelper so all windows will call OnStartNewGame when new game starts.  This should fix a lot of tinting problems when starting new game.
+ Fix: Players can no longer use the X buttons in the context area to remove ships from AI fleets
+ Fix: Invasions no longer clear what the starport is building
+ ALT TAB FIX:  Several screens had an extra ref for resource graphics
+ Fix: Fleet overlays now show the Upgrade process of the fleet
+ Fix: model in UpgradeShipWnd now shows correct model regardless of whether or not it is a canned ship
+ Fix: Clicking Upgrade All Ships of This Type will no longer reset the upgrade for ships of that type that were already upgrading
+ Fix: Units in fleets were getting an extra turn credited for upgrades.
+ Fix: If a fleet is upgrading, it cannot be moved
+ Fix: Number of max hp is preserved in a battle so it shows properly in the animation
+ Fix: Amt of damage done by a shot in a battle cannot exceed HP of the ship it is attacking.  (This caused synching problems in the battle anims)
+ Added support functions for upgrading ships in fleets
+ If a ship is upgrading, it will clear its moves and its path is not calculated until it is done upgrading
+ You cannot remove a ship in orbit if it is upgrading  (Message displayed to human player if they try to do this)
+ Whenever the ship upgrading updates its overlay, it will check if its in a fleet first, and update the fleet overlay instead if needed
+ Fix: Fleets will update their graphics when a ship in them finishes upgrading
+ Made some cosmetic changes to FleetCombatWindow:
   + Added detailed tooltips to various icons and data
   + Color coded damage pts.  If the damage is RED it means the ship was killed  (Hold the mouse over it and the tooltip explains this)
+ Made some minor fixes to fleet combats regarding hp and getting it all to synch correctly with the battle animations
+ MAJOR FIX: Fixed a major bug in the Resource Manager.  There was an extra reference for every resource.  This caused them not to get freed when the game exited.  We used to have a long list of leaked resources in the Debug window when the game exited.  That list is now eliminated.
+ Fix:  bug that caused the same battle to pop up twice in a row
+ Fix:  type-o that caused a "String Not Found" message for the "Basic Plate" starbase module
+ Fix: Clicking "Back" on Opponent window brings you back to "Customize Race" window
+ Fix: Changed "Cancel" to "Back"
+ Fixed an uninitialized variable in CivManager
+ Fix: If no starbase, Civ Manager planet list shows only a dash and you can’t click on it  (This can be changed in screens.str:  CivManagerListEntryWnd, NoStarport )
+ Add: New option to adjust the zoom level at which the map will transition to Tactical View
+ Replace: old bmp particle textures with png textures
+ Fix: Bug in Civilization::AddEvent that didn’t fully copy the event data
+ Fix: Fleets did not calculate Bonus Attack and Bonus Defense correctly
+ Add: Added text formatting functions to Galaxy to format statistics for fleets
+ Change: Ship damage now uses png textures in particle systems
+ Fix: Max hit points in a full battle did not show the correct number of HP
+ Add: Ships now add an event to the GNN window when they are involved in combat
+ Add: Starbases now use their proper weapon animations and show the proper defenses when they have modules that give them these
+ Fix: Bug that occasionally would cause the battle view to go completely black
+ Fix: Bug in the number of shots fired per weapon type
+ Change: DoVehicleExplode function can now be used to only display the explosion on a shipgraphic and not actually blow up the vehicle.  This was designed for the Invasions
+ Change: There is now a default weapon in each weapon category.  Before, they all defaulted to miniballs.
+ Add: Added tooltips to Fleet Combat window to show the effects of starbases on a fleet or ship.  Just hover over the Beam, missile, etc icons or their values
+ Add: Also added the civ name to a tooltip over the logo on Fleet combat window
+ Fix: Memory leak regarding sky box and star cloud
+ Fix: Damage graphics for starbases is now recreated when a game is loaded, and there is a damaged starbase
+ Fixed a bug in the move code regarding full battles.  For fleets, turns were completely depleted, and regular units were fully restored.   This resurfaced after some changes to the fleet code. 
+ If you click an AI fleet or ship, the appropriate buttons in the context area are disabled or hidden 
+ Parts in the ship designer can be scaled smaller and larger than you could before.
   + I have added two constants to ShipDesignScreen.h,  see comments in the file for instructions on adjusting the values.
+ Hardpoints now stay at a fixed size regardless of the size of the ship
   + This size can be adjusted by changing the new constant in ShipDesignWindow.h.  See comments in the file.
+ Fixed a bug in the default top-down camera.  When console panel was open, ships could go off the top of the screen.  Now the code accounts for that and adjusts the camera correctly to prevent ships going off the top of the screen when the panel is open.
+ Added external influence amt to the Planet window
+ Removed Debug strings from Pie Graph
+ Added support for double-clicking Push Buttons
+ If you double-click a choice in the Random Event window, it will select that choice and close the window
+ Fixed memory leak in TradeRouteGfx functions
+ Fixed a crash in StarGraphic code.
+ FogBugz case 3495: Added external/alien influence to the Influence stat on Planet Window
+ Removed debug code from PieGraph
+ If you double click a choice in Random Event screen, it will select that choice
+ Fixed memory leak in TradeRouteGfx functions
+ Fixed a bug in the Planet Details where it would not return to the default star map view
+ Fixed a bug in the Planet Window so it would return to Civ Manager planet list if opened from Civ Manager planet list
+ Fixed two ALT-TAB crashes
+ Added text to the "Speak To" button in the Foreign Policy United Planets window
+ Implemented morality changes in RandomEventWnd
+ Fixed a bug where the morality choice was being applied even when the RandomEventWnd had no event
+ Fixed a bug in Civ Manager where you could select a ship to build for planets without a starport
+ Fixed a bug in Civ Manager where it showed "-1 weeks" instead of "Never"
+ Fixed various spelling errors in the string and xml files
+ Added HP to the ship tooltip in the Planet Context window
+ Fixed a bug in the battle code that caused 0 hp ships to survive  ( This was fixed a while back, but somehow was overwritten )
+ fixed crash when playing with a random galaxy size
+ fixed bug that doubled starbase bonuses
+ fixed memory leak in miltary swap. It was never deleting the entries.
+ fixed leaked handle for g_hEventHiddenPlanetSurfacesCreated.
+ fixed custom star systems memory leak
+ Made functions to be called by CreateRandomEvents instead of having everything in one giant, hard to maintain function
+ If there is no ship selected when the player's turn starts, it should now look for a moveable ship
+ Random events
+ Pirates
+ Minor Race Wnd
+ implemented foreign report for Minor races
+ added stats for Minor races
+ added Go Home option to rallypoint wnd when in assign mode for ships
+ moved Prefs.ini to My Documents folder
+ made InitializeGalaxy create Mods folder.
+ new governor (swap) screen
+ BinkWin don't save textures in memory anymore
+ new graphs and stats wnd
+ made race wnd go to custom race wnd then opponentwnd
+ stellar cartography
+ Made Custom Races have a base logistics of 4.
+ Custom races are now saved to the My Documents\My Games\GalCiv2 folder.
+ Only the current custom race is read into memory now.
+ improved mouse performance
+ made it so that moons and rings are not dependant on planet quality
+ added bonuses for moons and rings
+ The tech tree in the research screen can now be filtered to hide already-researched techs and/or not-yet-researchable techs by clicking on the appropriate buttons at the bottom of the screen.
+ The bottom bar in the research screen now displays the name of the tech currently being researched as well as the progress towards completion.
+ Added the planet surface map to the invasion screen.  If any improvements are destroyed in the course of the invasion, a big red X is drawn on the map where the destroyed improvements were.
+ Added the ability to change the appearance of the planet invasion scene via TerrainColorSchemes.xml.  Each color scheme can specify a light color, ground texture and horizon texture to use when + planets that use that scheme are invaded.  The light color is used as the diffuse color for the terrain and horizon textures and as the ambient color for the units on the battlefield.  Note: to + implement ambient coloring of the models on the battlefield, the invasion screen disables global ambient lighting while the invasion screen is visible.
+ The invasion screen will now try to use race-specific unit models if they are available.  Basically, the invasion screen looks for the models S#_Soldier.X, S#_Tank.X and (for now) S#_Small_1.X, where # is the ship style of the civilization.  If it can’t find one or moe, it uses the default (style 0) for those it can’t find.
+ Invading units now draw a shadow under themselves.  The shadow textures should be named in a manner consistent with the name of the model it’s associated with (eg., the shadow for S0_Soldier.X should be named S0_Soldier_Shadow.png).  If a model shadow can’t be found, none is used (i.e., there is no default).
+ The invasion screen should no longer be cancelable, though I still have to make it so that hitting a key on the keyboard doesn’t close the window.  Once you get to the invasion screen, you’re committed to attacking. + DestroyPercentageOfImprovements() no longer clears the planet’s build queue.  Originally I had thought it a good idea, but it’s probably best to leave that decision up to the player.
+ You can now upgrade any building to any other (legal) building in the planet screen.
+ Invading (right-facing) units are no longer back-lit.
+ Techs that have alignment restrictions cannot be researched or used by civs that do not have a matching alignment.  Techs that are restricted from the player because of alignment are not visible in the research window.
+ CPlanetSurface::InstantTerraform() now removes any sector-enhancing improvements from the build queue of that planet.  This means that the Orbital Terraformer will remove sector-enhancing improvements on all of the owning player’s planets when it’s built and whenever the owning player acquires a new planet.
+ added a new type of process to GameProcess.cpp/hpp: CMultispawnProcess allows you to spawn multiple simultaneous processes at the completion of the initial process.  Any processes attached to the initial process via Attach() will behave as normal (i.e., they will be spawned sequentially in order of attachment when the initial process dies), but any processes attached via AppendSynchronous() will all be spawned when the initial process dies.  This process allows me to synchronize the "soldier dying" animation with the start of the explosion that kills it instead of having to wait until the end of the explosion.
+ Added more animation support to CShipGraphic.  CShipGraphic::SetAnimationTrack() lets you specify which animation set to play when a model has more than one animation set in it.  This function also has optional parameters to specify whether or not the animation should be played only once, where in the animation the playback should begin (first time only), and how fast the animation should progress.  For checking on one-shot animations, there is also CShipGraphic::HasTrackPlayedOnce().  These changes add a few dozen bytes to the size of CShipGraphic, so if this turns out to be a problem, we can probably sub-class the changes out of the base class.
+ Checked in the basic planet invasion depiction code, but it isn’t hooked up to the real invasion screen yet.  

--

Reminder when sending us feedback:

1) Always tell us your hardware configuration and your OS version

2) Send us a debug.err file (located in your GalCiv directory) if it's a crash bug.

3) Please be aware that we're nearing the end of development so changes such as "You know, what about having different races having different types of atmospheric requirements" aren't possible.

There will likely be one more public beta.

Aquarium Desktop 2006: Fish Pack #1

Published on Thursday, December 8, 2005 By Brad Wardell In WinCustomize News

Fish Pack #1 is now available for Stardock's Aquarium Desktop!  Aquarium Desktop is a program that enables very realistic looking fish to live on your Windows desktop. It is NOT a screen saver and is the only program of its kind available. 

With Aquarium Desktop, you can add multiple fish to swim around as well as plants and other background items. It even has optional sound. The fish and all the other elements can be easily minimized with a single click if the user wants to turn them off and the entire thing has been designed to be very intelligent in CPU usage so that it doesn't interfere with doing "real work". 

We're pretty biased obviously but this is one of the coolest programs we've ever worked with.  Fish Pack #1 adds 8 new fish to the mix. Check out the screenshots below for more information.

IGN profiles the GalCiv II aliens

Published on Wednesday, December 7, 2005 By Brad Wardell In GalCiv II News

IGN has put up its second part in its on-going series on the aliens of Galactic Civilizations II.  This week it's the mercenary Korx and the manipulating Drath who get featured.  Find out what makes these civilizations tick!

 

Apolyton.net interview!

Published on Wednesday, December 7, 2005 By Brad Wardell In GalCiv II News

Apolyton.net has released its Galactic Civilizations II interview. In this case, Dan Quick interviewed me on the background on the game and touched on the game industry itself.  So for those of you who have strong stomachs, go check it out! 

Apolyton.net will have a second interview coming out shortly. Stay tuned!

BETA will be closing soon

Published on Wednesday, December 7, 2005 By Brad Wardell In GalCiv II News

The Galactic Civilizations II beta will be closing in the next week or so as we get ready to move into the final stages of testing as well as starting to add in the release level graphics and polish elements.

If you want to join the beta, you still can for the next few days by pre-ordering the game from us here.  By pre-ordering you not only get the final game but the current beta.

We expect to have a new beta for all beta testers this Thursday (tomorrow). This will be a major beta update.

Holidify your desktop!

Published on Wednesday, December 7, 2005 By Brad Wardell In WinCustomize News

HO HO HO!  WinCustomize has some goodies for you!  Here are some goodies to decorate up your desktop.  You'll want to get DesktopX for a lot of this stuff.

 

Put this tree object on your desktop. It can point to anything. It's animated. This desktop object can point to anything you want. You can shake it and watch the show fall. This snowman will tip his hat on mouse over and can be set to point to anything. This fireplace is animated and can point to anything you'd like.

[Download]

[Download]

[Download]

[Download]

 

This Santa WindowBlinds skin I did isn't great but it's jolly! Adni's Holiday skin not only is in the spirit but is outstanding in its own right. This Santa Boot Screen can help cheer up your holiday spirit. Mormegil's Christmas Time boot screen helps get your system in the season.

[Download]

[Download]

[Download]

[Download]

 

The Little Drummer boy CursorXP cursors look fantastic and make your mouse cursors fit right in. The Santa mouse cursors for CursorXP are pretty sweet. Adni strikes again with this splendid wallpaper. This is one of my favorite Christmas wallpapers.

[Download]

[Download]

[Download]

[Download]

PowerUser.TV: Episode 18

Published on Wednesday, December 7, 2005 By Brad Wardell In WinCustomize News

PowerUser.TV Episode 18 has arrived!

Chow down on another show chock full of techy goodness. (This product contains nuts).

  • The future of Television
  • The chemistry of love
  • High definition DVDs and holographic DVDs
  • The BlackBerry lawsuit
  • PC vs. Console Games
  • The ESRB gets an ‘F’ from NIMF
  • Tom’s Game Pick of the Week
  • WindowBlinds 5 released!

Prelude to the holidays

Published on Monday, December 5, 2005 By Brad Wardell In WinCustomize News

The Christmas holiday is nearly upon us. Stardock is working on an update to Holiday Desktop (announcement coming very soon) that will include a WindowBlinds 5 based Christmas skin.  Last year, Greenreaper made the Realistic Snow DesktopX object which allows users to have snow falling on their desktops in a very realistic manner.  It's highly cool. He's working on a full-blown gadget of it too.

Here are some other cool little wintery/Christmas/holiday type submissions:

More to come!

Vista: Restart Manager is coming..

Published on Monday, December 5, 2005 By Brad Wardell In WinCustomize News

eWeek is reporting about a new feature in Windows Vista called Restart Manager.  Users who have notebooks may have a feature called "hibernation". Restart Manager is similar in that when the user restarts their machine due to having installed something new (a driver or whatever) your machine can come back exactly as it was.

Microsoft officials have not talked much publicly about this new feature, but Jim Allchin, the co-president of Microsoft's platform products and services division, recently told eWEEK that this is an example of just how important the reboot issue was to the Redmond-based software giant.

"If you have to reboot, then what happens is that the system, together with the applications, takes a snapshot of the state: the way things are on the screen at that very moment, and then it just updates and restarts the application, or in the case of an operating system update, it will bring the operating system back exactly where it was," Allchin said.

 

Chicago man sues Microsoft over Xbox 360 problems

Published on Monday, December 5, 2005 By Brad Wardell In WinCustomize News

Also over at CNET, a Chicago man, apparently hoping to eliminate any doubt that Americans will sue anyone for anything at the drop of the hat, has sued Microsoft because he claims Microsoft's Xbox 360 is prone to overheating.  Apparently, the Xbox 360 is the first consumer electronics device to have a defect rate greater than 0.0%.

The Chicago man, who did not indicate whether he lives in a cave or not, claims that Microsoft is selling a "defectively designed product".

The lawsuit, filed on Friday in federal court in Illinois, seeks unspecified damages and litigation-related expenses, as well as the replacement or recall of Xbox 360 game consoles.