Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411365 Posts in 69352 Topics- by 58404 Members - Latest Member: Green Matrix

April 13, 2024, 02:47:50 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
  Show Posts
Pages: 1 ... 7 8 [9] 10 11 ... 14
161  Developer / Art / Re: Jawesome Shark Ripoffs on: February 23, 2011, 09:30:29 AM
Those are too jawesomeawesome.  Tears of Joy  Where do you get them made?
162  Developer / Technical / Re: Roguelike dungeon/map generation algorithms on: February 23, 2011, 09:23:57 AM
Suggestions are appreciated. Thanks.  Beer!

I just wrote up an approach I use in the Braving PGC thread http://forums.tigsource.com/index.php?topic=5174.msg517809#new.  Maybe it's something along what you need.  If not, something else in there may be able to get you going. :D
163  Community / Tutorials / Re: Braving Procedural Generation [ Part Three! ] on: February 23, 2011, 08:59:25 AM
A technique that I've had some luck with in the past is working with perfect mazes (meaning there is always a valid path from start to finish) and modifying them.  I got the idea from a web site I stumbled upon some time ago while researching this stuff.  Sadly I no longer have the link or the author's name.

For instance, if we start a basic DFS style maze:

Code:
Initialize an array of empty cells
Keep a stack of visited cells for backtracking
Track how many cells we've visited in total
Pick a random cell to start and mark as visited

do
{
    find all neighbors of the current cell that have not yet been visited (no exits)
    if we have neighbors
    {
        pick a random one to move into
        knock down the wall between the cells
        mark the current cell as a corridor, non-wall, etc
        add the current cell to our stack
        set current cell to the next cell
        iterate visited count
    }
    else
    {
        get the last cell on our stack
        set as current cell
    }
} while(cells visited < total cells)



Then we proceed to shrink the maze a bit by finding all of the dead ends (that is, cells with only one exit) and removing them N number of times.

Code:
for n = 0 to iterations
{
    loop through all cells and add the ones with a single exit to a list
    for each cell in the list
    {
        remove the exits from this cell and the cell it leads to
        remove the cell by setting it to 'empty'
    }
}



Next we extend the remaining dead ends until they collide with an existing corridor/cell.  This will create loops and remove all dead ends.  This part is pretty much the same as the maze generation, but with a different termination clause.

Code:
loop through all cells and add the ones with a single exit to a list
keep a stack of cells we have visited
for each cell in the list
{
    do
    {
        find all neighbors of the current cell that are not in our visited stack
        if we have neighbors
        {
            pick a random one to move into
            knock down the wall between the cells
            mark the current cell as a corridor, non-wall, etc
            add the current cell to our stack
            set current cell to the next cell
        }
        else
        {
            get the last cell on our stack
            set as current cell
        }
    } while(the current cell has only one exit (ie, is still a dead end))    
}



From here you have the basic layout of a dungeon done.  You have a fully navigable set of corridors and only need to add the 'rooms'.  Probably the easiest way is to simply take the leftover empty space and designate those as rooms.  Add a door along a random wall that touches a corridor, and you're done!



Another method that works well for room placement, especially if you'd like to have pre-designed room chunks, is to do the following:

Code:
for r = 0 to roomsToPlace
{
    choose a random room from a preset list
    give the room a default large score (max int, for instance)
    for y = 0 to mapHeight, y += roomHeight
    {
        for x = 0 to mapWidth, x += roomWidth
        {
            'place' the room's top-left corner at x, y
            keep a temp score for this location
            for each cell along the room's walls
            {
                for each outer neighbor of the wall cell
                {
                    if mapCell == corridor
                        tempScore += 1;
                    if mapCell == room
                        tempScore += 100;
                    if mapCell overlaps the room cell
                        tempScore *= 3;
                }
            }
            if tempScore < score and tempScore > 0
            {
                score = tempScore
                set the room's real position to x and y
            }
        }
    }
}

This will let you generate dungeons with your pre-frab rooms while maintaining some randomness in terms of placement while also ensuring that the rooms will always be attached to corridors.  Changing the weights around will give drastically different results so there's room for customization, as well as adding weights above and beyond the basic ones listed there.

EDIT:  Fixed bad room chunk placement code.
164  Player / Games / Re: League of Legends on: February 22, 2011, 05:20:21 AM
I decided to give this a go as of last night and it was a lot of fun.  Add me (Rimguzzle) if you want.
165  Player / Games / Re: Absurd game ideas, unlikely to ever be made. on: February 21, 2011, 05:06:54 AM
A cooperative MMO that actually ends once the big bad raid boss is defeated.  No endless end game or grindy play.
If I understand you correctly, each dungeon in Vindictus ends right after the main boss is defeated. After a short time during which you can collect your items or just have fun smashing everything around you, you can press a button to return to town.

Sweet I'll have to check that out, thanks.

To try to sum up my idea on how I'd implement it were I to get around to making it... multiplayer, competitive Nethack.  Ideally each dungeon incarnation would last a week or two tops so that the game would remain perpetually pick up and play without forever being behind everyone else.  Such short iteration times may heavily favor players who have more time to sink into it, but there are likely ways to try to balance that out. 
166  Player / Games / Re: Absurd game ideas, unlikely to ever be made. on: February 18, 2011, 08:33:35 AM
Ah ya that does look pretty similar in idea!  Thanks. Smiley
167  Player / Games / Re: Absurd game ideas, unlikely to ever be made. on: February 18, 2011, 07:42:42 AM
A cooperative MMO that actually ends once the big bad raid boss is defeated.  No endless end game or grindy play.
168  Developer / Art / Re: show us some of your pixel work on: February 16, 2011, 10:24:12 AM

Okay, I think that I finished the scarf. I added transition frames, so now it's much smoother. I'm afraid I don't really have the whipping motion in at all though Sad
Man, I should probably stop clogging up this thread Shrug

The glasses kind of read as goggles to me now.  I guess the extra pixel at the back makes it feel like a wrap around strap?  What about just the one pixel in the middle?
169  Player / Games / Re: Games that Inspire Games on: February 16, 2011, 06:38:32 AM
C___ S____.

Counter Strike.   Wizard
170  Developer / Art / Re: Jawesome Shark Ripoffs on: February 04, 2011, 08:32:22 PM

i can't pixel. Embarrassed

This might be my favorite one so far.
171  Community / Jams & Events / Re: GDC 2011 bznz cards on: February 04, 2011, 07:27:30 AM
He edited the link; your quote image doesn't work but his does.


EDIT:
Awesomes.

That's so clean and smart.  Bravo.
172  Developer / Art / Re: Jawesome Shark Ripoffs on: February 03, 2011, 10:31:44 AM
I hope my contribution isn't too lame. :x  Lack of pixel abilities sparks innovation, right?  Right?

173  Community / Versus / Re: Premature entry announcement thread GO! on: January 24, 2011, 12:05:56 PM
We actually hope to map out one of the casinos around here (I live in Las Vegas) for authenticity.

This sounds like a fun project!  Do be careful to avoid the large guys in dark suits following you around while mapping the place, though... Ninja
174  Community / Versus / Re: Dungeon Dash on: January 19, 2011, 10:28:07 AM
Quote
This will move them in a random direction.
Why a random direction?

Mostly because I wanted to maintain a map with some persistence, but at the same time invoke the feeling of drawing random room cards off the top of the deck.  I don't think I want new rooms discovered every turn.  I'll have to see. Smiley

The rest sounds nice, except... how do the players interact?

Ya I completely failed to address that, sorry.  Player interaction will happen primarily through adventurer abilities, diplomacy, bargaining, and loot trading.  For instance the rogue adventurer will be able to lay traps that will trigger on the target player's next explore phase.  Casters will have the ability to curse and/or buff other parties.  Certain powerful spells like resurrection will be quite rare, and so their use can be bartered away from the owner's hand.

175  Community / Versus / Re: Dungeon Dash on: January 19, 2011, 09:04:05 AM
Made a (bad) mockup (with borrowed assets) of how the game may be generally laid out.



The first draft of gameplay:

  • Players create their party by choosing four adventures.  Each adventurer comes with a set of passive bonuses that will affect you at all times (ie, more experience gained, extra exploration, faster regen, more health, more items, etc)  Each adventurer also comes with 10 ability cards, unique to them, that will be added to your ability deck.  Each player starts the game in the same location on the map and with 5 ability cards from their randomized ability deck.
  • During each player's turn before they do anything else they will have the chance to play any abilities from their hand that may affect their turn if they wish.
  • If a player plays an ability or choose not to then they must draw a card from the exploration deck.  This will move them in a random direction.  If they discover a new room they will reveal a room card that determines the properties of the room for the rest of the game.  Then a random event card is revealed.
  • Event cards cover most of the action in the game.  They encompass combat with monsters, traps, treasure chests, magic effects, etc.
  • Combat details are still being worked out!
  • Event and monster cards can have XP values attached to them.  Completing the event/defeating the monster(s) grants the XP on the card to the party.  XP levels you granting you a new ability card in hand.
  • Upon reaching level 10 you are able to encounter the dungeon boss.  If you defeat it, you win!

This will continue to be fleshed out... any feedback?
176  Community / Versus / Dungeon Dash on: January 18, 2011, 08:46:25 PM
EDIT:  Decided that this project was a wee bit too ambitious for a month-ish long endeavor.  Going to tuck it away for now and find something else to do for this.  If a mod wanders by, you can delete this.  Thanks!


Two to four (perhaps more) players duke it out in an online card game version of a roguelike dungeon.  Expect influences like Nethack, Magic the Gathering, and Munchkin.

  • Each player controls a party of four adventurers chosen by them.  Will have the expected classics, and others.  Each adventurer will have some direct influence on how your game plays out so party composition will be both unique and strategic.
  • Lots of fun loot.  Maybe even some random generation here that you can't normally do in paper games.
  • I'd like to see diplomacy come into play so in-game trading will be allowed.  Bribe, beg, borrow and steal your way to victory.
  • The game will is a frantic up and down race to a party level of 10 at which point you can encounter the dungeon boss.  If you beat him, you win the round.

Will be using C#/XNA/Player.IO.

Will probably (read, definitely) need an artist for cool looking cards and stuff!

More to come.
177  Community / Versus / Re: Networking Solutions or: How Do I Play Over The Tubes? on: January 17, 2011, 09:49:56 AM
If you're a C#/XNA developer then the lidgren library is an easy to use option.
178  Community / DevLogs / Re: Welkinhold on: January 15, 2011, 04:42:14 PM
You should totally try combining logo 5 and 7.

Pretty much this.
179  Player / Games / Re: Should Derek start a new compo soon? (a poll) on: January 15, 2011, 03:25:29 PM
meta-compo compo.  go.
180  Player / Games / Re: Should Derek start a new compo soon? (a poll) on: January 14, 2011, 09:45:06 PM
Can somebody tell me why there are disguises like these in the first place? Do they long for a persons touch that bad that they do this kind of stuff?  Shocked

I vaguely remember that the coke machine one was supposed to be an anti-rape/mugging thing.  The girl runs away and hides among the vending machines (which are apparently pretty damn common in Japan?)

Could be wrong.

Also, compo.
Pages: 1 ... 7 8 [9] 10 11 ... 14
Theme orange-lt created by panic