Skip to content

WithinAmnesia/MMOARPG-Godot-Tiny-MMO-Template

 
 

Repository files navigation

Godot Tiny MMO Demo

A minimalistic MMO demo built using the Godot Engine 4.3.
Feel free to take a look at my Wiki to better understand the project.

Old screenshot showing 16 clients at the same time on multiple different instances:
M.M.O.A.R.P.G. (V.000.007) Godot-Tiny-MMO-Template-0.0.3 Godot 4.3 NET+ Dungeon Gathering Online (0)(Frontpage Github Contributor)(Image showing the early state of the project) Login menu:
login-menu-screenshot

Project Goals

The list below indicates the current progress and goals:

  • Client-Server connection through WebSocketMultiplayerPeer.
  • Client side working on web browser.
  • Authentication steps before connecting.
  • Login UI to authenticate.
  • Synchronizing entities among the players in the same instance.
  • Hosting different map instances on a single server and allowing traveling between them.
  • Basic RPG class system with 3 classes to get started with: Knight, Rogue, Wizard.
  • Private instance for individual players or groups.
  • Mobs hosted and managed by the server.
  • Basic combat system with PvE and PvP.
  • Experience and leveling systems.
  • Entity interpolation (rubber banding).
  • Server clock.
  • Instance based chat.
  • Saving persistent data on the server.

And maybe more later.

See the open issues for a full list of proposed features (and known issues).

Getting Started

To get started with the project:

  1. Clone this repository.
  2. Launch it with Godot 4.3.
  3. In Debug tab, choose "Customizable Run Instance...".
  4. Enable Multiple Instances and set at least 2 or more..
  5. Under feature tags, be sure to have only 1 "server" tag and at least 1 or more "client" tag.
  6. Play the project.

Example:
multiple-instances-screenshot

Contributing

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contributors & Credits.

Screen shots from @WithinAmnesia.
Also thanks to @Anokolisa for allowing us to use its assets for an open source project!

About

M.M.O.A.R.P.G.[Godot-Tiny-MMO-Template][Godot 4.3.NET+]

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • GDScript 100.0%