Have less shallow water, more deep water
Delete a bunch of old code from previous attempt at map generator
Copy over "narrow shelf" and "isolated 1 tile of shelf" terrain tiles from CTP1 to CTP2... though interestingly I believe they were never used by either game due to how their map generator works
CTP2 trench rule missing for NW shelf wall
If the height map generates a deep water tile next to land, we have to override it and force it to be shallow water, or the terrain tiles can't draw it
Code was incorrectly converting shallow water into continental shelf, should be converting deep water into continental shelf
Get rid of constants for special scenario tiles
Now I'm not using the CTP plasma generator, there's no need to use their skewed coordinate system either
Plasma generator based on the CTP code isn't even used as I'm sharing the same one I wrote for MoM, so get rid of it
NUMBER_OF_ROWS_FROM_MAP_EDGE_TO_AVOID is a carryover from MoM - in CTP there's no need to avoid putting land at the north/south poles
Even setting the Ocean/Land slider to max should not give a map that is 100% land
Uniform/Diverse slider works, but uniform is WAY too uniform, so tweak the minimum number of zones for the map generator up a bit
Switch backgrounds according to which tab is chosen. Add the Next Turn button.
A lot of headaches to add the 5 tabs onto the overland map button panel, as those tabs have some pretty unique UI behaviour
Add the button panel over the bottom right corner of the overland map
Add top menu bar onto the map screen
Seperate the terrain tile "hats" into separate images
Fix issues with left edge of the map missing leaving half a column of tiles blank on wrapping edges
Allow scrolling around the map; fix problem where bulk of the code would ignore Doughnut Worlds as it would reference the MapSize data directly from the XML and not use these settings from the session description
A lot of manual checking and correcting the terrain tile smoothing rules. Also verified the "trench" terrain type is not used in CTP2 so removed it completely.
Draw tile transitions; draw both base tiles and smoothed tiles on top
Include the transition directions for each tile in the XML
Show overland map, currently only displaying base tiles
Define terrain base image files
Minor tweaks to rerunning DB conversion
Implement terrain tile selection rules
Start to implement terrain updates and tile smoothing
Send the whole map to the client as a temporary; create space layer for CTP1 only
Wire in map generator
Only allow launching when enough players have joined and picked unique civs
Ability to join multiplayer games
Sort out a lot of the message exchange with changing nations and the launch button
Allow nation to be changed after the player joins
Start of "wait for players" screen
Start game when all human players are joined; server to client messaging framework; GPK structure
Fix various issues with building the assembly zip and trying to install and run the server+client from it
Only enable OK button when valid values have been chosen for all mandatory fields on the new game form; send the request to create the game to the server
Rethink how maxPlayers is going to work when cities rebel and form new nations
Map sliders screen
Choose difficulty and risks level
Choose map size
Map wrapping settings
Choose number of human and AI opponents
Select civ; build player description
Start to use proper language strings in the XML DBs; add unit test to verify that the DBs match the XSD
Allow choosing between CTP1 and CTP2; start of buildSessionDescription method to pull values from all the dialogs
Include yes/no on the bloodlust/pollution labels
Rules dialog
Start of new game UI - correct layout and fonts, just most of the buttons don't do anything yet
Player and session descriptions
Framework to start up server; client can now get as far as creating an account or logging in
Only enable OK button when all mandatory fields are filled in. Actually make connection attempt.
Reproduce look and feel of a CTP2 list box
Reproduce look and feel of CTP2 light on/light off buttons that act like checkboxes, and edit boxes
Connect to server UI (so far empty, but gets the border generation working)
Start of options screen
Use new JDK 21 parent
Use new release and snapshot versions of dependencies
Use release version of parent and dependencies
Use new parent snapshot, and switch from commons-logging to spring-jcl
Update to latest parent and dependencies
Text on buttons
Create buttons of any width from set of 3 images
Create shell of multiplayer client; now first UI screen opens
Ton of plumbing with language master and spring XMLs to work towards being able to build first UI screen
Transparency; break front page backgrounds and buttons out into their own folders
Include ZFS archives and sprites into resource converter
New build of map + XML editor
Output terrain image file names into XML; display them in editor grid
Start to parse tile selection rules into XML; add in the CTP2 special scenario terrain
Start of CTP XML editor
External script to run TileSetReader and build a jar of all the necessary resources
Start to build a real project structure - add missing modules, classpaths, logging configs, and project assembly
Start to make some sense of tile transformData
Start to get all the isSomeTypeOfTerrain methods in one central place; place beaches and shelf
Deskew coordinate system after height maps generated, so terrain is deskewed right off the bat and no more deskews are needed for later flood events
Start to have a proper data model that records the height/wet/temperature maps ready for flood events later on; zone processing method simplifies code a lot
Bash together a CTP-like map generator using the height map generator from MoM
Finally found the river images
Parse all CTP2 .SPR files
First try at decoding .SPR file
Use "wrapped diamond" coordinate system; make the map dumps use proper shaped diamond tiles that tesselate like the real ones so the output is easier to understand
Output images for tile improvements
No point in map directions and transition coords being permanently stored in the DB XML; change TileSetReader to read the DB XML instead of creating one that's in conflict from what's exported by BuildDatabase
Parse pop.txt
Parse citysize.txt (CTP2 only)
Parse citystyle.txt and agecitystyle.txt (CTP2 only)
Parse EndGameObjects.txt (CTP2 only)
Parse feat.txt (CTP2 only)
Parse orders.txt (CTP2) / order.txt (CTP1)
Parse map.txt
Parse goodsicon.txt
Parse CTP1 endgame.txt
Parse risks.txt
Parse wonder.txt
Parse civilisation.txt
Parse gw.txt
Parse pollution.txt
Parse buildings.txt (CTP2) / improve.txt (CTP1)
Try to parse terrain.txt, but the format is very different between CTP1 and CTP2