Skip to content

Releases: SimNine/Spybot

v2.7.0

06 Apr 02:54

Choose a tag to compare

2019/09/16
Custom programs, GUI overhaul
Massive delay due to refocusing on school

  • Reorganized resources folder and respective paths in Data class
  • Added three new programs: Teleporter, Transmitter, and Fragmenter
    • Teleporter moves the head of the targeted program to a random grid square
    • Transmitter moves the head of the targeted program to the location of another transmitter
    • Fragmenter scatters the tiles of the targeted program onto random grid squares
    • Added related program icons, action icons, and ACTION enums
  • Added username prompt box when creating new campaign profiles
  • Added GUIContainer "_fadeOverlay", just a global GUIContainer that has a black background to create whole-screen fade effects
  • Added new class "TimedEvent" used to hold a generic anonymous function that is queued up to be executed later
  • Added global LinkedList "_timedEvents" used to hold events
  • Added a fade-out / fade-in transition when entering a campaign
  • Added Credits panel on mainOverlay, displaying original team's names as well as my own (did not include Code, Process, QA, or Lego.com sections)
  • Added BKGMODE enum, specifying the style in which the background overlay animates
  • Added BKGMODE_RAINBOW mode for use on Credits panel
  • Added BKGMODE_REDBLUE mode for use on Multiplayer lobby panel
  • Complete redoing of ProgramInventoryDisplay
    • It is now a paged display consisting of a row for each program type, displaying num owned, speed, size, etc
    • Two arrows on the right side to page through
    • "Minimize" button fades the display out and makes a tab appear, which can be clicked to reexpand the display
  • Fixed the gameoverlay's PlayerDisplay not becoming appropriately translucent
  • Added a tab for PlayerDisplay in exactly the same manner as the tab for ProgramInventoryDisplay
  • Possibly other additions that I've forgotten

v2.6.1

06 Apr 02:57

Choose a tag to compare

2018/07/14

  • Fixed bug causing client crash on second level entry
  • Fixed bug causing crash on singleplayer game entry
  • Fixed bug caused by pingSender thread trying to send messages to deleted clientList
    • pingSender thread is now only run by non-local servers
  • Fixed bug causing singleplayer dummy client mirror to appear in multiplayer lobby
    • Message queue and ClientMirror list are now emptied on disconnect from a server

v2.0.0

06 Apr 03:02

Choose a tag to compare

2018/05/05
Game code separation, singleplayer reintroduction

  • Separated and modularized Server class and server logic:
    • Server is now included by default in the client
    • A local instance of Server is created when the client opens a singleplayer game
  • Added MSGTYPE_CHAT, which fills the entire contents of the message (including other fields), with text
  • Separated CommandProcessor from Server
  • Commands sent from external clients are now echoed back their responses
  • Singleplayer is now functional again

v1.5.0

06 Apr 03:14

Choose a tag to compare

2018/05/01
Gamescreen animations

  • Added a linkedlist of Animations to GameScreen class
  • Added an Animation class to encapsulate animated effects and associated subclasses for animations
    • AnimationAttack (on a successful use of ACTIONTYPE_DAMAGE)
    • AnimationSelect (on selection of a grid tile)
    • AnimationTileFade (representing eliminated program tiles as they fade out
  • Added an AnimationParticle class and associated subclasses to encapsulate particles
    • AnimationParticleSquareSpeck
    • AnimationParticleSelectRing
  • Changed GUITextbox to take a boolean indicating whether it is censored or not (i.e., passwords)

v1.0.0

06 Apr 03:11

Choose a tag to compare

2017/12/26
Multiplayer framework, IDE switch

TOO MUCH STUFF TO REMEMBER IT ALL - THIS MILESTONE IS A SANITY CHECK, NOT THE FINAL VERSION

  • Now using Microsoft Visual Studio instead of Code::Blocks
  • Began using WinSock API to pass messages over network (new DLL dependencies)
  • Separated game into SpybotServer and SpybotClient
    • Separated game logic:
      • Client responds to user input by sending it to the Server
      • Server confirms that messages received from Client are valid, then updates state, sends message back to Client
        -Client updates view
    • Some logical resources are shared, these are in SpybotShared
    • Works on the basis of message passing: packets of fixed size, about 96 bytes
  • New "Multiplayer" button on main screen
  • Singleplayer is broken

v0.6.0

06 Apr 03:18

Choose a tag to compare

2017/09/03

  • Renamed/re-ripped some of the sound resources (NOT DONE)
  • Added a map saving/loading system
  • Nodes now keep a list of neighbors rather than children in order to allow unlocking levels in any order
  • The player's programs are now separated by campaign
  • GUI rework:
    • GUIContainers are now click-and-draggable by default
    • Moving a GUIContainer puts it on top of its parent's GUIObject stack
    • Added support in GUIContainers for a color as a background
    • Programs that are done for a turn now show a check mark next to their icon
    • Consolidated lots of GUIButtons into GUIContainers (especially on the game screen)
    • The default GUIContainer background color is now grey {120, 120, 120, 140}
    • Added a GUIContainer "pause menu" to map and game screens
    • Added display to GameScreen showing the beginning of the player's and the ai's turn
  • The player can now pick up credits, and a sound is played
  • Some GUIButtons no longer share common resources; dataContainer now contains strings containing URLs to the textures it represents

v0.1.0

06 Apr 02:46

Choose a tag to compare

2017/07/05

  • Added title screen with fading title slides
  • Began work on main menu:
    • Added buttons for two campaigns, one freeform, options, achievs, quit
    • Added procedurally animated background
  • Began implementing sound engine using "SDL_mixer"
    • Must remember to include application extensions
  • Added icon

v0.0.0

06 Apr 02:42

Choose a tag to compare

2017/06/22

  • First go at making a game in c++ as opposed to java
  • Three main screens (MENU, MAP, GAME)
  • Levels are represented as a grid with three layers
    • Tile layer
    • Program layer
    • Item layer
  • Programs have the same characteristics as in the original game
  • Not all program moves have been ported yet