Dec 2016
Jun 2024
Lead Architect
Evolve Software, LLC
Dallas, Texas, US
Evolve is a small development studio that creates casino, redemption, skill, and web games.
C# Development/Architecture
- Cross-Platform Game Engine: Designed and built company's 2D/3D cross platform game engine using C# and Monogame API.
- Client/Server Component: Built multi-threaded client/server component so games could be driven via server, login, safely receive and JSON unpack game results and user milestones, etc. Utilized System.Net.HttpClient to hook consume web services. Web services were .NET services that stored information in SQL Server tables.
- Dynamic Game Loader: Games and game plugins could be released as individual C# Assemblies with all graphics, sounds, packed in. Game loader would check for latest version, unpack if necessary, and dynamically load available games and components. Games could be released from memory so user could select another.
- On-Screen Game Editing: Interactive/on-screen game editor built in WPF. Users could be position, scale, rotate, color, etc all game entity objects on screen and save output to loadable XML files for use and automatic load in game engine.
- Gaming Hardware and Administration: Integrated game platform with a variety of casino hardware including bill acceptors, io boards, and ticket/receipt printers. On-screen tools for configuring and test all hardware and configuring each terminal.
- Dozens of Games and Game Systems Built: Released over 50 game titles including slot games, skill games, fantasy sports games, and redemption games.
Web Development
- Node.JSGameWeb Engine: Built Node.JS game web engine in Javacsript(Typescript)/HTML5 so that all titles and games could run on the web with little modification.
- Puck/React On-Screen Editor: Could modify and position items in web browser for easy customization and creation of games.
- XHR Integration with backend server: Could communicate with same web services as standalone games.
- Dozens of Titles: Over 20 Pixi.js/Pixi3D game titles with dynamic loading.