Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 2 3 [4] 5 6 7

Author Topic: Let's make a roguelike, amateur programming at its... finest?  (Read 21476 times)

Girlinhat

  • Bay Watcher
  • [PREFSTRING:large ears]
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #45 on: October 15, 2012, 10:20:40 pm »

Ideally yes, but I'm not entirely sure how to handle herd dynamics yet, and humans are certainly herd animals.  I think the most common threat will be roving bandits, somewhat more polite ones.  They wander in armed and armored and demand food.  If you give it, they leave peacefully, if you refuse, they wreck yo shit.  Maybe they slaughter a few cattle or set a barn on fire just to remind you who's in charge.

Neonivek

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #46 on: October 15, 2012, 10:37:09 pm »

I'd probably consider classic humans to be more Pack animals then Herd animals.
Logged

Girlinhat

  • Bay Watcher
  • [PREFSTRING:large ears]
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #47 on: October 15, 2012, 10:42:14 pm »

I dunno, Humans seem to spend a lot of time loitering in one place and munching on grass wheat.

Not to mention, anyone who's ever seen a tourist will agree that "herd" fits.  Also highschool and college girls.

Neonivek

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #48 on: October 15, 2012, 10:53:10 pm »

I checked some definitions... Apperantly Pack and Herd are basically the same thing. Just different animals.
Logged

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #49 on: October 16, 2012, 06:38:36 am »

Ehh... post to watch. :D

Personally, I use C++ (and I have a libtcod engine made for me by someone else), so this is a no-go for me. Dx (I really should pick up another language sometime, but I get lazy.)

I was thinking of trying my hand at a herbalism game, so coincidence!
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Levi

  • Bay Watcher
  • Is a fish.
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #50 on: October 16, 2012, 09:29:52 am »

Dang it, this thread is inspirational.  Time to go program my own game!  :D
Logged
Avid Gamer | Goldfish Enthusiast | Canadian | Professional Layabout

Another

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #51 on: October 16, 2012, 09:31:34 am »

  Good luck on your project. No matter how good tutorials that you follow are you will most likely want to rewrite everything from scratch after you gain some programming experience.

  For livestock I would suggest separating genotype an phenotype. The genotype sets the initial values and maximums of all attributes and is inherited and phenotype is influenced by outside conditions and development history and is not passed to offspring. The nature really does closer to (parents -10/+9) to genetic attributes of each successive generation and it is balanced by lower offspring rates of less fit creatures. [Maybe make a downside of more productive animals that they need more food intake to survive but less productive ones have less reserves before they starve to death starting from their respective maximum fed levels.]

  Decay checks Cataclysm-style are IMHO not the most elegant solution for several reasons. (I browsed the relevant portions of Cataclysm code some time ago.) That looks like cool hack and leads to bursts of computations and simultaneous changes in the world every once in a while (when global time is divisible by certain numbers) and may look somewhat unnatural in-game. Minecraft system of "block updates" that happen at random intervals and have relatively low probabilities of state change at each update better model stochastic processes. For a turn based 2D game "block update" every turn is completely feasible. (If anything is moving with a source of dynamic lighting - it will happen anyway.) Deterministic processes are better handled with either a counter that is modified at each passage of time (hacks that decrement a counter once every 2^n turns were appropriate in the 8 bit era) or just store the global time at which next status change is scheduled and compare that.

  And one more technical advice - try to keep all the numbers out of the code from the start. A file with global parameters (like day/year length) and one or more "raw" files with game object characteristics (including names) are really helpful to save your own time at later stages of development.
Logged

dennislp3

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #52 on: October 16, 2012, 01:26:35 pm »

Ehh... post to watch. :D

Personally, I use C++ (and I have a libtcod engine made for me by someone else), so this is a no-go for me. Dx (I really should pick up another language sometime, but I get lazy.)

I was thinking of trying my hand at a herbalism game, so coincidence!

I am personally almost this route...

For some reason C++ feels "easier" to me...its more complicated and takes more writing...but Python doesn't feel as easy for me to read and understand...
Logged

RedKing

  • Bay Watcher
  • hoo hoo motherfucker
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #53 on: October 16, 2012, 03:41:12 pm »

I think you should combine ALL THE IDEAS and make a zombie farming/breeding sim with elements of Evil Genius/Dungeon Keeper.

You play the role of the necromancer/mad scientist, and start with one lousy zombie, your basic shambler. Each time your zombie kills and zombifies someone, they have a chance to have slightly differents traits (faster, stronger, hungrier, sturdier, etc.) with a smaller chance to be an entirely different kind of zombie (think the special Infected in L4D). You're trying to breed bigger, badder zombies and eventually build up an army that can launch your master plan. But in the meantime, you also need run-of-the-mill shamblers to do menial tasks, act as builders, etc.

You also need to build up your defenses and ward off periodic investigations by the police, the Church and a group of danged meddling kids and their dog.

I dunno...there's a lot of directions you could go with that. Make it more of a building/DF type game by having all sorts of objects that you could build to enhance zombies or affect their mutation rates...or focus on the combat part and make it more of an RTS. Or just get heavy-duty into the "ZNA" and make it into Zombie Rancher.
Logged

Remember, knowledge is power. The power to make other people feel stupid.
Quote from: Neil DeGrasse Tyson
Science is like an inoculation against charlatans who would have you believe whatever it is they tell you.

dennislp3

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #54 on: October 16, 2012, 08:35:29 pm »

The idea of a necromancer simulator was one of my first ideas and I am not sure how I feel about it. Certainly an idea. Regardless they will both start out the same so I am just sticking with the village sim outline and tweak it later down the road and flesh it out into a more specific game.

Also I plan to develop my rogue like eternally as a pet hobby project...similar to Toady and DF.

As it stands though it seems like Girlinhat has some pretty sweet ideas of her own and I cant wait to see what she produces!
Logged

The Rookie

  • Escaped Lunatic
    • View Profile
    • The Rookie
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #55 on: October 16, 2012, 08:55:21 pm »

This sounds interesting. I'm actually making a roguelike with libtcod and python as well(Link in siggy) and it's also my first game. So I will definitely be watching this. Don't give up!

Girlinhat

  • Bay Watcher
  • [PREFSTRING:large ears]
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #56 on: October 16, 2012, 09:09:58 pm »

I've run into a slight problem.  The main program imports libtcod.  I've added a new library/module named "tiles" which is storing different tile info.  When I try to import "tiles" then it claims that "tiles doesn't have libtcod" (because tiles uses libtcod color definitions) even though "tiles" does import "libtcod" the same way.

Main file imports libtcod and tiles.
libtcod works fine.
tiles imports libtcod.
On run, it acts as if tiles hasn't imported libtcod.

dennislp3

  • Bay Watcher
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #57 on: October 16, 2012, 10:13:37 pm »

so tiles.py has:

import libtcodpy

and your main does as well and it says tiles.py does NOT have libtcod?
Logged

The Rookie

  • Escaped Lunatic
    • View Profile
    • The Rookie
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #58 on: October 16, 2012, 10:15:58 pm »

I've run into a slight problem.  The main program imports libtcod.  I've added a new library/module named "tiles" which is storing different tile info.  When I try to import "tiles" then it claims that "tiles doesn't have libtcod" (because tiles uses libtcod color definitions) even though "tiles" does import "libtcod" the same way.

Main file imports libtcod and tiles.
libtcod works fine.
tiles imports libtcod.
On run, it acts as if tiles hasn't imported libtcod.

Could you post the error you're getting?

Girlinhat

  • Bay Watcher
  • [PREFSTRING:large ears]
    • View Profile
Re: Let's make a roguelike, amateur programming at its... finest?
« Reply #59 on: October 16, 2012, 10:16:40 pm »

Code: [Select]
Traceback (most recent call last):
  File "C:\Users\E\Desktop\Pyhton\Testy\testy", line 175, in <module>
    make_map()
  File "C:\Users\E\Desktop\Pyhton\Testy\testy", line 56, in make_map
    for x in range(MAP_WIDTH)]
  File "C:\Users\E\Desktop\Pyhton\Testy\tiles.py", line 8, in __init__
    self.lit_color=libtcod.light_green
NameError: global name 'libtcod' is not defined
I have it as "import libtcodpy as libtcod" and then reference things like "libtcod.light_green" which worked fine in the main file, but when it's in "tiles" then it acts like it can't import or something.  All of the files are in the same folder, so there's no directories to deal with.

EDIT: http://www.bay12forums.com/smf/index.php?topic=30113.msg3702088#msg3702088
« Last Edit: October 16, 2012, 11:17:20 pm by Girlinhat »
Logged
Pages: 1 2 3 [4] 5 6 7