Home - JDrocks450/nio2so GitHub Wiki
Welcome to the nio2so wiki!
Please use the navigation menu to locate articles in the Wiki!
Project Roadmap
Last modified 07/11/2025
Introduction
What started off as a simple program to read *.uis files (UIScripts) in The Sims Online: Pre-Alpha to see what the game might've looked like during development, quickly unfolded into what it is today as I am writing this. Below you will find a roadmap of what is currently completed, and I still have planned for the future as I continue to resurrect The Sims Online: Pre-Alpha through the project: nio2so
Roadmap for nio2so.Online - TSOHTTP & Voltron
TSOHTTP & TSOHTTPS
AuthLogin.jsp
- β Authorized Result
- β Username / Password verification
- β Errors - Play Rights Expired | Blank Password/Username | Invalid Username
- β User Database with accounts storing progress - Completed (nio2so Data Service Update)
AvatarDataServlet.jsp
- β Serve data for a list of up to three (3) avatars (not based on user).
- β Documented aspects of the structure of the response schema of this controller.
- β Serve list of avatars based on user account - Completed (nio2so Data Service Update)
- ~~ Serve data about each avatar based on a database attached to the user account - Mostly Completed
InitialConnect.jsp
- β Patch Available! - Direct Client to invoke Buddy.exe to patch the game.
- β Error Result - Custom error messages supported.
- β User Authorized - Proceed to next controller.
ShardStatus.jsp
- β Serves list of shards programmatically
- β Shard Name, Privacy, Status, and Population Online populated
- Create multiple instances of the TSOCityServer added to the shard network - Possible/Not In Development
ShardSelectorServlet.jsp
- β Serve a shard based on what the user selects
- β Custom IP addresses with port
The Sims Online: Pre-Alpha
Voltron Features
Create-A-Sim (Edit-A-Sim)
- Arrive at Create-A-Sim
- View all Bodies, Faces, Skin Colors
- Set description and name
- Set personality points
- Save Avatars to Database
Map View
- Arrive at Map View
- View player's profiles
- "Where's my House?" button
- View/Edit House profiles
- Purchase properties
- Track funds using the Data Service
- Top 100 Lists (Most Popular Places filter as well)
- Avatar/House Searches
- Lot Thumbnails
- Lot Offline/Online
- Player-to-Player Messaging (Letters and Chat Messages)
- Exit from a room back to Map View
- Enter Edit-A-Sim from Map View
- Go back to Select-A-Sim from Map View
In-Game
- Arrive at the Lot View
- Designate a player as a host (HSB Mode)
- Join an actively hosted property as a Client
- Chat with other players in the room
- Interact with objects in the room
- Build a house
- Save the house to the Data Service
History of nio2so.Online - Reverse Engineering Voltron
Milestone 0 - Project Inception
Jan 18, 2024
- Added TSOCityServer.cs with the HostOnlinePDU and ClientOnlinePDUs to make first contact with Voltron
- Added TSOHTTP & TSOHTTPS to handle initial server login
- Added TSOVoltronPacket built on top of TCPQuaZarβs ExtendedBufferOperations class for manipulating incoming binary data.
- TSOView2 was created for viewing (*.uis) and The Sims Online: Pre-Alpha city maps.
Milestone 1 - Arriving to the MapView for the first time
May 30, 2024 - Laying the foundation
- Added TSOVoltronPacket serialization technique for serialization of basic data types into the structure of a PDU.
- Added an early test structure for the TSODBRequestWrapper PDU
November 13th, 2024 - Trying to make it to MapView for the first time
- Added the first four DBWrapper PDU structures : TSOGetBookmarksResponse, TSOGetCharBlobByIDResponse, TSOGetHouseBlobByIDResponse, TSOGetRoommateInfoByIDResponse (Structure was not functional)
- Expanded the TSOVoltronPacket serializer to TSODBWrapperPDU
- Up to 14 total PDU structures added to nio2so for testing
- Added nio2so protocol regulator system to handle incoming/outgoing traffic: Avatar, Lot
- Added the TSOPDUFactory for creating, dumping, deserializing, serializing packets to/from file.
November 16th, 2024 - Investing in Infrastructure
- Added early databases for Avatars and Houses in preparation for MapView
- Added GetHouseLeader, FindPlayer, FindPlayerResponse, and LoadHouse PDUs
- Added the cTSOVoltronDMSProtocol and SplitBufferProtocol regulators to nio2so
November 17th, 2024 - Made it to MapView for the first time with an Avatar loaded
- Added Images for MapView early tests
- Published the TSOGetCharBlobByIDResponse working PDU w/ Documentation
- Added the SetCharBlob and InsertCharBlob PDUs
- Fixed the GetCharByID_Query PDU
- TSODBWrapperPDU structure is still very early on -- serialization in early stages using TSOVoltronPacket serialization.
April 20th, 2026 - Top 100 Protocol completed
- Added the Top 100 Protocol