Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3 ... 11

Author Topic: 100 Heroes - A roguelike(like?) in development - v0.15 .exe available  (Read 53836 times)

mendonca

  • Bay Watcher
  • [CLIVE]
    • View Profile

Hello, venerable Bay12ers, purveyors of justice and all that is right.

I've been working ever so slowly on my Python skills over the past year or so, and after overcoming several conceptual hurdles a couple of months ago, I actually managed to pull together something.

This has manifested in the form of a relatively simple, but hopefully reasonably interesting 'roguelike' I am choosing to call '100 Heroes'. It's coded in Python, with the Libtcod wrapper, and you will need Python installed if you want to run it.

SOURCE - Python version latest code

EXECUTABLE - executable, built thanks to Lord Dullard (Cult Developer and all round good egg)

The premise is that you play the role of a retailer in a small town beset by troubles, in the form of a dastardly set of dungeons springing up in the locale. You can immediately see a nice gap in the market to trade in the tools of war, and through shrewd buying / selling of goods, you have an opportunity to make a tidy profit. Amongst all this are 100 persistent heroes, from 12 factions, who mill about the world, going about their business.

(CURRENT(ish) VERSION SCREENSHOTS)





The heroes themselves are very abstract, but they do have simple needs which drive their purchases. I've got some loose plans around making their behaviour more complex, and there is a fairly straightforward route to giving them all individual opinions about the various factions of the game. As with any new feature, it's a matter of coding it, which won't happen any time soon, but maybe (hopefully) I will get another spurt done in the next few months.

Some Features:
*Realistic shopkeeping simulator, including a month by month ledger recording all your transactions.
*100 heroes persistent throughout the world at any given time. When the corpse of a hero finally rots in a dungeon, a peasant or noble will rise to fill their shoes.
*Read each Hero's internal monologue as s/he travels through the world and adventures in the dungeon.
*Hero skills. Each Hero type will gain skills associated with their faction which changes how they interact with the world (a couple of skills implemented at this moment ...)
*Merchants. A particular type of hero who will come to town, looking for goods or with a healthy cargo of new supplies.
*Too many surnames beginning with the letter ‘H’. Hockadays, Hodkinsons and Horgans of the world finally get a game with which to vicariously live out their desires to work in retail in a high fantasy setting.
*Player knowledge system: Start off an ignoramus, slowly and methodically pick apart the details of the world to become something akin to the Hugh Scully of generic-fantasy-land.

Some goals:
*Slow, fun gameplay to try and create the means with which the stories of these heroes can be told, set against the backdrop of the player making money by the accrual of knowledge, good pricing and stock control.
*The world should change, dynamically, in accordance with the amount of evil left in the world. Heroes plundering dungeons and killing monsters are also killing dreams. Without Orcs, the visiting marching band of Pixies start to come to town more infrequently. And possibly rampaging Balrogs if the heroes bring the wrong stuff out of the dungeon.

Hope one or two of you would be interested in having a play about, it would be cool to get some feedback or thoughts or anything really. I am inexperienced in coding, and I have got some plans to do more work on it, but don't let that stop you if you want to offer any particularly cutting commments.

Thanks,

mendonca
« Last Edit: October 29, 2013, 08:26:35 am by mendonca »
Logged

Yoink

  • Bay Watcher
  • OKAY, FINE.
    • View Profile

Well, I can't play it without downloading Python and such, but I certainly like the premise!
Right from the start it's an innovative idea. It would be spectacular to view all those tired, fantasy plot elements about heroes slaying monsters, restoring ancient artefacts to the temples that crafted them, being brave and saving damsels and all those from a completely different viewpoint: A merchant.
You don't care if Aeltherius The Red needs the silver longsword of undead slaying+1 so he can end the reign of the dreaded necromancer Har'Ken'Spaxl, you aren't going to give him a 50% discount!
Damned heroes, why can't they keep a real bloody job for a change... :P

Anyway, awesome idea. I'd sink a few hundred hours into it, for sure. Watching!
Logged
Booze is Life for Yoink

To deprive him of Drink is to steal divinity from God.
you need to reconsider your life
If there's any cause worth dying for, it's memes.

mendonca

  • Bay Watcher
  • [CLIVE]
    • View Profile

Ha ha! Thanks for the nice comments.

You don't care if Aeltherius The Red needs the silver longsword of undead slaying+1 so he can end the reign of the dreaded necromancer Har'Ken'Spaxl, you aren't going to give him a 50% discount!
Exactly!

And you would happily sell the sword to Har'Ken'Spaxl if he gave you the right price, even if it did mean three decades of decay.
Logged

Korbac

  • Bay Watcher
  • I'm very annoying, so tell me to STFU if need be
    • View Profile

Sounds genius! :D

Will try it now. :)
Logged

Neonivek

  • Bay Watcher
    • View Profile

Urge to flood this roguelike with suggestions... Growing!

Must resist!

Though I am not sure how this is a roguelike unless you yourself go adventuring.

Anyhow I love the idea that you essentially save the city/town by running a shop (at least I hope this is what it is). Want to take down the Fairy glade? Well maybe I will increase the selling price of Pixie wings from 100 to 200.

New Snakemen giving people trouble? Antidotes are now for sale cheap!

Thiefs/rogues I can see even being double edge. They can steal/find/lockpick treasures no one else can... but they will love to steal from you as well.

Ohh well. Good luck with the game. I'd love to hit you over the head with hero ideas later.

Though I will admit... Though you may have said very little about the game and how it will work exactly... This is one of the more interesting "roguelikes" I've heard of for a long time.
« Last Edit: March 28, 2012, 12:08:30 pm by Neonivek »
Logged

Korbac

  • Bay Watcher
  • I'm very annoying, so tell me to STFU if need be
    • View Profile

Just played it - it's pretty darn amazing, although it does crash after about 10 minutes of play.

A great game by the looks of it! :)
Logged

Brotato

  • Bay Watcher
  • Beware the Destroyer of Threads!
    • View Profile

Haven't tried it yet; but it sounds like an amazing idea.  Hope you can execute it well.
Logged
Dwarf Fortress: The only game where people will hold a logical discussion about why dwarves are putting on clothes.
OK, I have to reload the save.
There was a bit of a problem regarding flashfreezing, a ballistae, and a barrel of dwarven ale. Gonna fix it up.

Neonivek

  • Bay Watcher
    • View Profile

Ohh it has a alpha already? whoa! I gotta try it with a computer that can open Rar
Logged

mendonca

  • Bay Watcher
  • [CLIVE]
    • View Profile

Urge to flood this roguelike with suggestions... Growing!

Must resist!

Though I am not sure how this is a roguelike unless you yourself go adventuring.

Anyhow I love the idea that you essentially save the city/town by running a shop (at least I hope this is what it is). Want to take down the Fairy glade? Well maybe I will increase the selling price of Pixie wings from 100 to 200.

New Snakemen giving people trouble? Antidotes are now for sale cheap!

Thiefs/rogues I can see even being double edge. They can steal/find/lockpick treasures no one else can... but they will love to steal from you as well.

Ohh well. Good luck with the game. I'd love to hit you over the head with hero ideas later.

Hey, suggestions are definitely welcome. Of all the ideas I have had, most of them are about the world and less so about the heroes. If you wanted to offer any thoughts on this, they would be most welcome.

I've been struggling to figure out how I would want the demand based value to work, at the minute they assess items on an individual basis, independent to the world (just based on their internal level) but that sounds pretty close to some of the things I would like to do, eventually.

Probably need to get some kind of marauding monster in, at that point thieves stealing would borrow from the same mechanics, I should think.

Though I will admit... Though you may have said very little about the game and how it will work exactly... This is one of the more interesting "roguelikes" I've heard of for a long time.

Well, thanks! And the quotes are certainly justified. This is definitely inspired far more by roguelikes, than by rogue itself.

Just played it - it's pretty darn amazing, although it does crash after about 10 minutes of play.

A great game by the looks of it! :)

Thanks for playing! Sorry about the crash, I'll have a quick look through the code tomorrow, I might be pointing you to a version that is not as stable as it should be. Been trying to keep on top of version control, and I have been cautious with creating new 'rar' files. I might have since fixed a couple of glaring bugs from the posted version.

Haven't tried it yet; but it sounds like an amazing idea.  Hope you can execute it well.

Thanks, I'm getting there :) It's definitely a case of 'cutting my cloth accordingly'. Trying to ensure the mechanics of the game aren't beyond my limits as a coder, and still get something semi-interesting. It's been better than I imagined it would be, up to this stage.

Ohh it has a alpha already? whoa! I gotta try it with a computer that can open Rar

You'll need Python as well, but if you try it out that would be awesome.
Logged

Lord Dullard

  • Bay Watcher
  • Indubitably.
    • View Profile
    • Cult: Awakening of the Old Ones

This is really interesting - I tried playing for a bit and liked it, although I don't have a lot of time to spend on it at the moment. I may see about compiling this into a distributable for you in a while - I think it should be fairly easy to do a simple rewrite of the py2exe script I'm using for Cult for your game so that people without Python can give it a try.

EDIT:

Okay, here you are, good sir!

***HERE*** is a compiled version for those without Python.

Mendonca, if you'd like access to the script I used to do this and a quick run-through of how to do the same thing via py2exe (it's really, really easy), I can help you out. Otherwise, good luck with your game!

« Last Edit: March 28, 2012, 04:27:27 pm by Lord Dullard »
Logged

Ma88hew

  • Bay Watcher
    • View Profile

Works fine with Linux after adding the libtcod and libSDL .so files.
However, crash:
Quote
Traceback (most recent call last):
  File "ahundredheroes.py", line 4610, in <module>
    pass_turn()
  File "ahundredheroes.py", line 1575, in pass_turn
    heroes.hero_decision()
  File "ahundredheroes.py", line 785, in hero_decision
    self.fight(generate_encounter(dlev, dlev + self.in_dungeon, dlev, dlev + self.in_dungeon))
  File "ahundredheroes.py", line 992, in fight
    self.find_item()                   
  File "ahundredheroes.py", line 950, in find_item
    log_info(str(item_won) + ' ' + str(item) + ' ' + self.faction + ' ' + str(self.base_level) )
  File "ahundredheroes.py", line 4088, in log_info
    f = open('/logfile.txt', 'a')
IOError: [Errno 13] Permission denied: '/logfile.txt'
Remove the '/' on line 4088, this causes it to attempt to write to the root directory on linux (the equivalent to C:\ on windows). Thus, a permissions error.

Otherwise, neat game! Good luck with it!
Logged

Neonivek

  • Bay Watcher
    • View Profile

I'll get to more specifics later but my idea is mostly for classes of heros, their abilities, tendencies, and interpersonal ability as well as possible use for "Non-Hero" friendly units I call Entourage.

Here are three examples

Necromancer
-Type: Magic Hero
-Social Circle: Dark Hero (social circle determine what heros they like to hang around with. Dark Heros dislike being around White Knights)
-Sociability: Solitary (Sociability determines how often they like to team up with other heros. Solitary Heros will almost always go solo but also tend to be more powerful then an ordinary hero)
-Bravery: Average (Bravery determines how difficult of a dungeon they will attempt compared ot their power)
-Quirks: Spartan, Unease, Crypt Lovers (Certain heros have certain quirks. Spartan heros buy the cheapest luxuries possible. Unease makes them exceptionally difficult to be around. Crypt lovers prefer to delve into crypts)
-Special ability 1: Necromancers get four entourage slots where they can summon Skeletons or Zombie creatures. Essentially a walking party.
-Special ability 2: Commune with the dead: Necromancers can speak with dead heros and thus they cannot be caught off guard by a supperior enemy that slain a hero.

Rogue
-Type: Dungeon Specialist
-Social Circle: Seedy (Seedy characters get along with Dark Heros and are tollerated by good heros at best)
-Sociability: Loner (Loners won't join a party but can be scouted)
-Bravery: Low (Rogues are a careful bunch)
-Quirks: Thief, Backstab (Thieves will steal from other heros, dungeons, and even you. Backstabbers will occasionally murder other heros for their loot.)
-Special Ability 1: Trap Disable: Rogues disable traps more easily then other heros, even ones not normally disabled.
-Special Ability 2: Lock Disable: Rogues disable locks more easily then other heros, even ones not normally disabled.

Bard
-Type: Ace (Good at everything)
-Social Circle: Good Hero (Good for lack of a better word... refers to "Bright" heros or goody goodies.)
-Sociability: Super Social (Super Social Heros will always make a party)
-Quirks: Luxurious, Lazy, Critic, Instrument lover (Luxurious love to waste money on expencive but useless objects. Lazy Heros would rather rest then dungeoneer. Critics love to tell other heros about your shop for better or ill. Instrument lover likes to buy instruments)
-Special ability 1: Inspire: Bards improve a party just by being in them
-Special ability 2: Charismatic: Bards are easily capable of snagging people together for a party.

Dwarf
-Type: Melee Warrior
-Social Circle: Neutral
-Sociability: Average
-Bravery: Foolhearty (Dwarves like to delve into tougher dungeons)
-Quirks: Alcoholic, Busybody, Mine Lover (Alcoholic loves to buy alcohol, Busybodies will dungeon delve as much as possible, Mine lovers will prefer mine dungeons)
-Special ability 1: Miner: Dwarves will bring back hidden gems and metals after dungeon delving if the dungeon has any and will sell it.

Other stuff I thought of are Quirks like: Hoarder and Greedy (Hoarders prefer to stockpile items instead of selling them. Greedy characters prefer to hoard gold over buying items... I think Rogues were supposed to be Hoarders and Theives were supposed to be greedy)
« Last Edit: March 28, 2012, 07:43:31 pm by Neonivek »
Logged

mendonca

  • Bay Watcher
  • [CLIVE]
    • View Profile

This is really interesting - I tried playing for a bit and liked it, although I don't have a lot of time to spend on it at the moment. I may see about compiling this into a distributable for you in a while - I think it should be fairly easy to do a simple rewrite of the py2exe script I'm using for Cult for your game so that people without Python can give it a try.

EDIT:

Okay, here you are, good sir!

***HERE*** is a compiled version for those without Python.

Mendonca, if you'd like access to the script I used to do this and a quick run-through of how to do the same thing via py2exe (it's really, really easy), I can help you out. Otherwise, good luck with your game!

Wow, thanks! I'll admit I did spend a couple of hours trying to wrap my head round py2exe, and failed. A quick run through would be awesome, if you didn't mind! (but don't let it get in the way of Cult coding ;))

Thanks for the report, Ma88hew. I should have disabled the logging really, but I suppose I'm glad I didn't otherwise I'd have never have picked up that potential bug!

And Neonivek, these thoughts are really interesting, fit well within what I think I can do, but actually develop where I had got to quite nicely in lots of ways. Thank you!

Interestingly, I had never considered identifying heroes by their race ...
Logged

Korbac

  • Bay Watcher
  • I'm very annoying, so tell me to STFU if need be
    • View Profile

Woohoo! Good news all around!  :D

Just tell me when the bugfixed version is out, Mendonca, and I'll be on it in a flash!
Logged

getter77

  • Bay Watcher
    • View Profile

Most interesting, going to have to keep tabs on this one indeed.
Logged
Pages: [1] 2 3 ... 11