Giter Site home page Giter Site logo

mud-server's People

Contributors

akiira avatar mixisbad avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

cloudxtreme

mud-server's Issues

List Of What Else Needs Done

I am just writing a list so I can remember what else needs to be done, you don't need to respond to this Hand. But if you want to take one of these let me know here.

  1. Allow clients to create a new character on the central server. These characters need to be rolled random stats and given the appropriate equipment for their race and class. (High Priority)
  2. Add new rooms. We should have at least two unique areas so we can have a separate server running each area. This could be one server holding a town and another server holding a simple dungeon. (Med-High Priority)
  3. Add new types of monsters (Med Priority)
  4. Add loot and item drops to the monsters. (Priority)
  5. Add some simple experience and level system. (lower priority)
  6. Add class system to game (Lower priority)
  7. Add magic system to game (Lower Priority)
  8. Incorporate Christian's Algorithm into some system of the game. I think I will use it to do some bidding system. An item will be up for auction and near the end, to ensure we give it to the correct winner, use Christians algorithm to find the most appropriate winner. (High Priority)
  9. We have redirect working from central server to world server, just need to make sure it also works between two world servers. This requires changing the Room class to have some special flag when a linked room is on a separate server. Then when a character tries to move to that room the client gets redirected. (Med-High Priority)
  10. Possibly add some trading between players. Not sure if this is important to our grade or not. (Med-High Priority?)
  11. Add missing commands to the game.

Character was saved as room -1 in "" worldID

I believe that it is because this statement char.RoomIN = -1
in func (room *Room) RemovePlayer(charName string)

which cause the func (em *EventManager) GetPlayersWorld(char *Character) string
to return ""

*confirmed
after I remove that line out it fixed the problem and when I re-add it back, the problem comes back again

RoomID cannot be duplicated among worlds

Since we change the way we link between worlds, the connected room of World2 must also be include in a map of World1 as well. Before a character can move to that room, it'll need to find that room from RoomID in the rooms map. So we cannot have two rooms with RoomID as 0 in the same map, even though they have different WorldID

However, we can overcome this issue with a certain way of RoomID numbering.
Ex. world1 will consist of 1000, 1001, 1002, 1003, ....
world2 will consist of 2000, 2001, 2002, 2003, ....

If room 1003 has exit to room 2000, then in the map of world1, there will be rooms with the following RoomID, 1000:local, 1001:local, 1002:local, 1003:local, 2000:world2.
This will allow us to find room in the room's map of a world server with only int as we have implemented.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.