Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Development] Splix.io Private Server

Status
Not open for further replies.
Experienced Elementalist
Joined
Nov 11, 2015
Messages
238
Reaction score
89
Hi developers and leechers,

today I'd like to show you the project I started some days ago.

What is SplixIO?
Splix is a strategy game, as many IO games. Move around your personal zone to expand your zone.
Simple explanation showed on Splix' site:
3635f6de1342a8340209f0836408f0fb - [Development] Splix.io Private Server - RaGEZONE Forums

Why a private server?
I like the game very much, and have nothing but respect to the developers of it, yet I'm still a curious George wanting to expand my knowledge.
Never before have I made my own C# project, so bear with me as you might see some irregular code.
Besides wanting to expand my knowledge, it seemed a good idea to me to let people create their own private servers, allowing them to play with their friends, and their friends only, in for instance a much smaller map.
Just like Ogar did with Agar, I can create some custom gamemodes too which is really fun to look forward to.

How does it work?
Splix works through websockets. It uses a javascript client, and in my case a C# server.
The library I'm using for C# WebSockets is Flex, the reason for this is simply because I had experience with it.
I simply modified the client, allowing me to log packets and learning more and more about the game.

Why C#?
You're either pro- or anti-C#, I "grew up" programming in C# as I was always working on Habbo related projects. Therefore I'm pro-C#. I'm not againt Java, don't get me wrong, but I simply love Visual Studio.
The server is 100% selfwritten, though does it contain some inspiration from some projects I've been working with lately.

Progress?
The basics are done. The server handles and sends packets properly.
Though I have yet to configure all the incoming packets, and the game itself etc.
82d50e9bdad3fad97e4e4ea60417e914 - [Development] Splix.io Private Server - RaGEZONE Forums

Snippet
This snippet is just an example of me working with the various packets, learning more about them, and the meaning of the bytes within them.
Code:
    class MyDeathComposer : ServerPacket
    {


        public MyDeathComposer(int SecondsAlive, int HighestRank, int PlayersKilled, int BlocksCaptured, int DeathType, string KilledBy = "")
            : base(ServerPacketHeader.MyDeathMessageComposer)
        {


            base.WriteInt(0); // Blocks captured 1
            base.WriteInt(0); // Blocks captured 2
            base.WriteInt(Convert.ToInt32(Math.Floor(Convert.ToDouble(BlocksCaptured) / 256.0))); // Blocks captured multiplier
            base.WriteInt(BlocksCaptured % 256); // Blocks captured remainder


            base.WriteInt(Convert.ToInt32(Math.Floor(Convert.ToDouble(PlayersKilled) / 256.0))); // Kills multiplier
            base.WriteInt(PlayersKilled % 256); // Kills remainder


            base.WriteInt(Convert.ToInt32(Math.Floor(Convert.ToDouble(HighestRank) / 256.0))); // Highest Rank Multiplier
            base.WriteInt(HighestRank % 256); // Highest Rank remainder


            base.WriteInt(0); // Seconds alive 3th
            base.WriteInt(0); // Seconds alive 2nd
            base.WriteInt(Convert.ToInt32(Math.Floor(Convert.ToDouble(SecondsAlive) / 256.0))); // Seconds alive multiplier
            base.WriteInt(SecondsAlive % 256); // Seconds alive remainder


            base.WriteInt(0); // Last time no1   1
            base.WriteInt(0); // Last time no1   2
            base.WriteInt(0); // Last time no1   3
            base.WriteInt(0); // Last time no1   4


            base.WriteInt(DeathType < 0 || DeathType > 3 ? 1 : DeathType); // Killed by, 1=player, 2=the wall, 3=yourself
            base.WriteString(KilledBy); // Killed by


        }


    }
}

So yeah
That's it for now, just wanted to share the idea with you!
I'll probably release it when it's done, so stay tuned for that I guess..

Love, :blush:
Keiz
 

Attachments

You must be registered for see attachments list
Junior Spellweaver
Joined
Jan 1, 2016
Messages
157
Reaction score
23
Looks good, good luck with this:w00t:
 
Status
Not open for further replies.
Back
Top