Thread: MURK - a small preview

  1. #1
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446

    MURK - a small preview

    There isn't much to show. A coupe of screenshots bellow.

    This is what I have been working on. It's coming slow because... well, I don't devote to it 100% of my free time. But it is something I always wanted to do. Even from when I didn't know how to do it.

    MURK is going to be a console single-player game based on two game concepts; MUDs and Rogues. The emphasis is on MUDs, but you will see your progress in the world map as you explore. The game is turn based, except for combat which is going to be MUD based (aka real-time-sort-of).

    I'm making an effort to make it as easy to port as possible. No fancy non-portable libraries. The game is using Boost, SQLite3 and PDCurses (a win32 port of ncurses). Everything I might know as being non-portable, is commented in with "NPORT: " followed by a possible description. I hope it will ease the work of anyone wishing to port it to other systems.

    Some Game Features and Screenshots:

    • Diablo II-like system of random object creation; prefix, suffix, uniques, sets, specials
    • Diablo II-like system of monster spawning
    • Areas reset when you leave them
    • Weather and Calendar systems
    • Intelligent rooms; wet if raining and outdoors, lights if night and habited indoors, ...
    • Static mazes, shifting mazes, damaging rooms, dark rooms, magic rooms,...
    • Many commands in the best MUD tradition. But easy to learn and easy to access
    • Complex character creation and development. Don't ask me more...
    • Never-ending world. Areas adapt to player level.
    • Never ending experience. Player has unsigned long * char levels to acquire.
    • Some areas can be totally randomly generated. Other areas can be completely hand-drawn.
    • Why I think I can do all this is because I think I'm insane. But trust me, it's been a long, long, dream of mine. It will be done. And much, much, more.... It will take a long while too.


    Two screenshoots:
    One showing the part of your screen where the room info is displayed and where you have your prompt. The other showing the yet-to-be-formatted result of the inventory command.

    The numbers are the object unique ID. So it is possible to manipulate them by name, part of the name, or UID. "remove 5", "remove leather boots", or "remove boo" will all unequip the boots. Objects only show their IDs when in your inventory. A + sign means a container.
    Last edited by Mario F.; 12-03-2006 at 06:10 AM.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  2. #2
    Registered User
    Join Date
    May 2006
    Posts
    169
    You have a fan.

  3. #3
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Thanks. The idea is of course, to have the source code available through Open Source once there is a basic game people can play with.

    I understand the features list is anything but comprehensive or incisive. But I prefer be more...honest?... about it and only list what I have already, instead of what I plan to have. Saying "hundreds of monsters" when I currently only have 5 for testing purposes and being built on top of a incomplete class is really not my style.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  4. #4
    Its hard... But im here swgh's Avatar
    Join Date
    Apr 2005
    Location
    England
    Posts
    1,688
    True mario, but this is a project you are working on, and as you said is still a work in
    progress. You do not have a team of proffesional artists, researchers and programmers
    helping you. Like many people, you are doing this off your own back. In many ways you learn much more about how much C++ you know and can use to full effect when you create a text game.
    I might make my first text game soon, I am nearly at the end of my course and have already started the pen and paper processs ( basic classes I need ).

    One more thing. You say you are going to have enemys ( of course ) but are you planning on using class inheritence for this? I mean, will you use a base class and derive all the enemy objects from this base class? I only ask as I am pondering this for own game, trying to find out what the best method would be before i put code to IDE.
    Double Helix STL

  5. #5
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    I think you will find inventory tracking a...more challenging subject when reach the point you will start considering it Enemies was a no-brainer. But itwas for this particular project. Depending on how you want your enemies to behave, it may mean more complex relations.

    My game beings are composed of two classes. CPlayer and CBeing. There's no relations between them. Any possible distinctions are implemented through composition, not inheritance. For instance, I have a CRace and CProfession classes for races and profession handling. An instance of these classes is made a private member of CPlayer and CBeing and exposed through interfaces.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  6. #6
    Its hard... But im here swgh's Avatar
    Join Date
    Apr 2005
    Location
    England
    Posts
    1,688
    Thanks mario, all the best with the project, I look forward to seeing the finished prduct on the games board
    Double Helix STL

  7. #7
    Sanity is for the weak! beene's Avatar
    Join Date
    Jul 2006
    Posts
    321
    Did you write your code in C or C++?

  8. #8
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Well, he has classes and he uses Boost ...
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  9. #9
    Sanity is for the weak! beene's Avatar
    Join Date
    Jul 2006
    Posts
    321
    i'm guessing C++?

  10. #10
    Sanity is for the weak! beene's Avatar
    Join Date
    Jul 2006
    Posts
    321
    anyway... if it is, how did you get your writing different colours?

  11. #11
    Registered User
    Join Date
    May 2006
    Posts
    169
    It's a library called pdcurses I assume, pretty neat stuff.

  12. #12
    Sanity is for the weak! beene's Avatar
    Join Date
    Jul 2006
    Posts
    321
    and how would i get this library?

  13. #13
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  14. #14
    In the Land of Diddly-Doo g4j31a5's Avatar
    Join Date
    Jul 2006
    Posts
    476
    What? No graphics?

    BTW, nice going. Will it have the same gameplay as netHack? Can I hack my way from the save files?

  15. #15
    Hurry Slowly vart's Avatar
    Join Date
    Oct 2006
    Location
    Rishon LeZion, Israel
    Posts
    6,788
    hope your strings are in resource files... for easy translation
    All problems in computer science can be solved by another level of indirection,
    except for the problem of too many layers of indirection.
    – David J. Wheeler

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. how to split long programe in small files
    By umeshjaviya in forum C Programming
    Replies: 11
    Last Post: 04-15-2008, 02:45 AM
  2. want to make this small program...
    By psycho88 in forum C++ Programming
    Replies: 8
    Last Post: 11-30-2005, 02:05 AM
  3. FILES in WinAPI
    By Garfield in forum Windows Programming
    Replies: 46
    Last Post: 10-02-2003, 06:51 PM
  4. yhatzee, small straight
    By uglyjack in forum C++ Programming
    Replies: 2
    Last Post: 06-13-2002, 03:09 AM
  5. Small app ideas
    By dirkduck in forum A Brief History of Cprogramming.com
    Replies: 4
    Last Post: 02-15-2002, 08:57 PM