Monday, May 20, 2013

LAN 2013 Prep

So, this past weekend was perhaps the biggest playtest I've had in some months. Accordingly, I spent entirely too much time world-ing in the hours and days and weeks prior. On top of that since I left work 3 weeks ago means that really an awful lot's been written. In fact, I exhausted myself so bad before the LAN I instituted a self-ban on Visual Studio for 2 days after it. Since I'm still disallowed, here I am writing :)

So first, an update, in long form. In a later post, a postmortem on how the LAN behaved w/r/t World.

New stuff coding and otherwise:

  • Awesomium integration! 
    • Awesomium is a wrapper library for Chromium/Webkit, meaning, it's a library to help build front-ends using Web UI languages. I'm converting over our menus one by one to use html/js/css instead of my old homebrew DirectX hackery. The main menu's been converted entirely, and some new modes' menus are all Web UI of course. 
    • This means that a lot of the UI works in a normal browser now. Not enough to do anything yet, but it's substantially closer to having parts of the game work without installs and directx.
  • Beginnings of the Continent game
    • The project has always planned on being a two-tier game. The combat/skirmish level has received pretty much all the attention, but there's always been a plan to have the overarching world driving the scenarios. Most of the terrain work from earlier this year was written in preparation to begin the top-level, which executes the world as a whole.
    • The basic idea is that the continent game is where the player navigates, builds, explores, discovers, customizes, and then finds or builds scenarios. When found the scenarios are then joinable by the player in skirmish mode.
  • Rebuild of the Universe Server
    • The universe is the meta-server. The previous version had components to handle account storage (player data), scenario launching (which didn't realllly work), a list of live scenarios (which worked), and assets to check for updates and download.
    • The server interfaces are mostly unchanged, but the backing implementation is now completely different. The server executes a Zone the same way that the skirmish server does, but that Zone is running a different game database; this one represents the continent behaviors as a whole instead of handling combat. Players, commanders, primaries are all stored in this continent-zone, rather than having separate storage. This gives them position and behaviors at the continent level.
  • Continent and Explore Modes
    • The universe now can serve up the terrain data for the continent, as well as pre-rendered overhead imagery. The client can view the overhead imagery using a custom map built with the google maps API, either in the game-browser on in a normal one. The imagery is rendered as a part of universe generation. 
    • The map also shows units that exist on the map, just as icons at the moment though.
    • From the continent viewer the game can enter explore mode, where the player jumps into first person to explore the world as their player-entity. It's veeery rudimentary at the moment but does render the terrain from the universe server. It's a start!
And more esoteric things:
  • Installer fixes; the installer needed a lot of attention to handle the Awesomium libraries, as well as resolving some directx related install hackery. Awesomium's libs are sadly somewhat large, and now account for 80% of the install size. (50MB total now)
  • Lots of assorted bug fixes. We did some testing a few days before the LAN and had a somewhat painful series of obnoxious bugs that had to get dealt with. Some were install related, some related to downloading assets failing, some with awesomium state changes, some with scenario restarts, mid-scenario joins, rejoins, second joins, crashes on quits... OMG the list went on and on. That list is why I'm tired and banned from VS for two days :p
Lastly, as a matter of laziness while updating terrain systems, I broke the old scenarios and didn't care to resuscitate them, so I had to make new ones:
  • The basic testing scenario has a couple paths, with some enemy commaders, flame elementals, spiders, and some earth elementals. There's a flame commander group that charges the player that can be gamed interestingly, and a Ogre at the end. It's mostly testing and a little complicated to be a learning scenario, but it's reasonably fun for solo play.
  • The main new scenario is a single enemy commander on a small hill, surrounded by his minions. He makes a circular formation rather than a line, but never moves the formation. He has units of each type, shields, swords, scouts, archers, and the counts scale with player count. When the commander is killed his followers immediately die and he becomes a single-mob boss, just for fun. He throws enemies out of melee and throws boulders that mod the terrain. When he dies there is fireworks :)
  • A new practice scenario that's just flat with some target dummies that I forgot to make immobile. Supposed to be to learn how to move and play and stuff.
  • A hastily thrown together Territory Control map with 3 capture points and some terrain variety. For PvP :)
And lastly for the Update, Eirikr made some new biomes and terrain tile types. Sadly since the continent/explore mode doesn't have any gameplay in them yet, noone saw them :p

I'll make some pictures for the next post to go with the post-mortem. You know, post-mortem sounds kind of depressing. How bout post-awesomeness?

No comments:

Post a Comment