TIGSource Forums

Feedback => DevLogs => Topic started by: billythegoat101 on January 19, 2011, 06:01:27 PM



Title: The Mod-Cave
Post by: billythegoat101 on January 19, 2011, 06:01:27 PM
(http://img843.imageshack.us/img843/6733/2511g.png)
Most recent image

Hello all!
I'm relatively new here but I've been lurking about for a couple months now just waiting until I felt that this project of mine was far enough past laughable to present to you for judgment, criticism, and all that good stuff  ;D

So the basic idea for the gameplay aspect of this is an infinite 2d JAVA multiplayer adventure-sandbox sorta thing. Maps generate as you go, maybe meet some interesting AI tribes, and discover some hopefully intriguing generated areas such as deserted ruins through your limited view distance.
(http://img716.imageshack.us/img716/504/capture1foc.png)
cool? I hope so :P
To explain this image: The little blue dude is you, the # signs are walls, and those lambdas are enemies around the corner
The area that is lit up is within your view distance, the areas in gray are areas that youve discovered, but aren't currently within your view, so what is drawn is simply the last thing the game saw since it was within view.
I know ascii really isnt really the best way to go for various reasons, but it made it easer to implement multiple block types
Although in the middle of writing that I kinda had one of those d'oh moments since it was originally ascii but I changed that a while ago into a spritesheet of ascii characters, so I'll probably end up changing the graphics to something a bit more respectable >_<

So anyway,more importantly beyond the crappy gameplay I come up for it, the real purpose behind this is actually to be a sort of plaything for people who like messing with plugin-type things.
I plan on turning everything server-side into an open plugin environment, so people can control everything from player actions to map generation. So what people can do is host a server with maybe a dungeon-plugin on it where people walk around a pre-made dungeon complete with monsters and treasures and whatever else the creator chooses to add!

I'm really not the best at describing things >_< so if you have any questions, comments, or suggestions feel free to post em
I could really use some of your opinions on what you think and if youd actually be interested in making stuff for it if it was simple enough (it is in JAVA)
also, I really need help with the title :beg:

What I have to do:
more block properties eg luminescence and server control of what player's can see
optimization
my own plugin as content
possible single player without needing a server running too, though that seems difficult given the fact all the content is based off plugins

What I have so far:
vid (http://www.youtube.com/watch?v=edPfQGKeMNU) : quick demo of some stuff client-side, however a lot has changed since the making of that, namely bug fix-wise
Multiplayer : self explanitory, although not had the chance to test out more than about 5 players yet, but it seems promising. Other than that it has held up pretty well so far.
Dynamic lighting : you can only see so far, and not though solid objects
Server side pretty-much-everything : Meaning server can tell the client how everything should look and act, so a dirt block should be brown and an enemy should be red
Spritesheet based sprites, as opposed to pure ascii
Players can dig and place blocks
Plugin hook system added
Tile sheet capability
Call plugin hooks
Load the plugins
Server properties file
LOS lighting + gradient/falloff/whatever you wanna call it




Title: Re: The Mod-Cave (working title)
Post by: MaloEspada on January 19, 2011, 06:04:45 PM
Quote
Maps generate as you go, maybe meet some interesting AI tribes, and discover some hopefully intriguing generated areas such as deserted ruins through your limited view distance.

I'M SOLD.

Make more. Make more!!


Title: Re: The Mod-Cave (working title)
Post by: Chris Pavia on January 19, 2011, 06:19:34 PM
This sounds awseome! Can you talk about your procedural generation algorithms? I know some of the most basic techniques like drunken walkers and CA, but I'm interested in hearing about the more complex stuff.


Title: Re: The Mod-Cave (working title)
Post by: Conker534 on January 19, 2011, 06:25:02 PM
MINeCraFT WAnA Beeeee!!!!!!
 

I'm kidding. This looks sick. ^_^ good luck!   :tiger: :handthumbsupR:


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 19, 2011, 06:37:31 PM
This sounds awseome! Can you talk about your procedural generation algorithms? I know some of the most basic techniques like drunken walkers and CA, but I'm interested in hearing about the more complex stuff.

Sorry but I really don't know as much as you seem to think i do >_<
So far the only algorithms Ive really used are for caves, which is basically random noise and smoothing out based on a set of rules, and then adding misc structures like rectangles to that :-/. But Ive been messing with those rules
Things like true dungeon generation with the rooms and hallways I havent really looked too deep into yet
im still looking for more methods to add though :)


MINeCraFT WAnA Beeeee!!!!!!
I'm kidding. This looks sick. ^_^ good luck!   :tiger: :handthumbsupR:

Haha, its actually very heavily influenced by minecraft and its community here and there :P


Title: Re: The Mod-Cave (working title)
Post by: Inanimate on January 19, 2011, 06:49:05 PM
This is an absolutely genius idea. Including customization support is amazing, as well. I can't wait to see how far this goes!

Will it be competitive? Will there be a survival aspect? Ranking?


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 19, 2011, 07:05:52 PM
This is an absolutely genius idea. Including customization support is amazing, as well. I can't wait to see how far this goes!

How will it be competitive? Will there be a survival aspect? Ranking?

XD thank you!
Hopefully, my version of the gameplay will be mostly cooperative against ghosts and ghouls I plan to pit against you, so it will probably be survival (theres that minecraft popping up again...)
But thats just one idea

Although since any developer has pretty much full control over the server and what the players do on it, people could make any kind of gameplay they want
maybe even simulate something like mario by pretending the y-axis of the normally top-down map is up/down and add some sorta gravity
You probably wont understand a word of that since I cant describe things for the life of me but the basic jist is that hopefully I wont be making most of this game in a matter of speaking :P


Title: Re: The Mod-Cave (working title)
Post by: Chris Pavia on January 19, 2011, 07:23:46 PM
Sorry but I really don't know as much as you seem to think i do >_<

If you aren't already aware of it, there is plenty of information to be found at http://pcg.wikidot.com/ (http://pcg.wikidot.com/)!


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 19, 2011, 07:40:20 PM
Sorry but I really don't know as much as you seem to think i do >_<

If you aren't already aware of it, there is plenty of information to be found at http://pcg.wikidot.com/ (http://pcg.wikidot.com/)!

freaking sweet
thank you XD
oh and to add to what i said before, I am using a cellular automata based generator


Title: Re: The Mod-Cave (working title)
Post by: Chris Pavia on January 19, 2011, 08:21:52 PM
oh and to add to what i said before, I am using a cellular automata based generator

Are you doing anything to ensure connectivity? Cellular automata provides nice organic looking caves, but often leads to unreachable areas.

I'm using 2 different methods for my current project. The first gives nice room/corridor looking levels, but is painfully unintelligent. It goes something like:

-Fill a grid with solid (unwalkable) terrain
-Carve out a room in the center
-Put all the wall tiles (tiles between open and solid squares) into an array
     -Or a subset of wall tiles if you want a more ordered look to room placement
-Determine if the next feature to be placed is a room or corridor (or some other feature)
-Pick a wall tile out of the array to act as the door between the two features
-Check the grid to see if the feature to be placed will overlap with any existing features or the edge of the grid.
-If not, carve out the feature and add the wall tiles to the array
-If the space is occupied, dump the feature and start again
-Repeat process a bunch of times.

It's a pretty brute-force approach, but it's easy to understand (I'm not that technically adept) and ensures any square is reachable by any other square.


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 19, 2011, 08:40:05 PM
oh and to add to what i said before, I am using a cellular automata based generator

Are you doing anything to ensure connectivity? Cellular automata provides nice organic looking caves, but often leads to unreachable areas.

I'm using 2 different methods for my current project. The first gives nice room/corridor looking levels, but is painfully unintelligent. It goes something like:

-snip-

It's a pretty brute-force approach, but it's easy to understand (I'm not that technically adept) and ensures any square is reachable by any other square.

With the general common caves i actually try to fix the rules so that there are several open and separated chambers so taht the player can discover them
with the dynamic lighting they wont be able to see past the cavern they are in so it gives a bit of an exploration feel to it

however for the maps that are supposed to be for tribes, i have been looking for a good method like that without any luck
thanks for that explanation, that really helped compared to the tech jargon that normal sites use :D


Title: Re: The Mod-Cave (working title)
Post by: Chris Pavia on January 19, 2011, 08:46:20 PM
For more reference, check out this legendary thread:
Braving Procedural Generation (http://forums.tigsource.com/index.php?topic=5174.0)

And there's always Rogue Basin  (http://roguebasin.roguelikedevelopment.org/index.php?title=Main_Page)


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 19, 2011, 08:52:21 PM
For more reference, check out this legendary thread:
Braving Procedural Generation (http://forums.tigsource.com/index.php?topic=5174.0)

And there's always Rogue Basin  (http://roguebasin.roguelikedevelopment.org/index.php?title=Main_Page)


moar delicious candy XD
thank you!


Title: Re: The Mod-Cave (working title)
Post by: Acid on January 19, 2011, 09:44:00 PM
This sounds awesome, but the ascii graphics bother me... so maybe add the option to toggle a tileset or two?


Title: Re: The Mod-Cave (working title)
Post by: Droqen on January 19, 2011, 11:12:29 PM
This sounds awesome, but the ascii graphics bother me... so maybe add the option to toggle a tileset or two?

You say that like making a tileset isn't a big deal, when it is (or can be) :x


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 20, 2011, 04:03:10 AM
This sounds awesome, but the ascii graphics bother me... so maybe add the option to toggle a tileset or two?

You say that like making a tileset isn't a big deal, when it is (or can be) :x

It already supports tilesets
I just never thought of using it for anything other than ascii before :P

I know ascii really isnt really the best way to go for various reasons, but it made it easer to implement multiple block types
Although in the middle of writing that I kinda had one of those d'oh moments since it was originally ascii but I changed that a while ago into a spritesheet of ascii characters, so I'll probably end up changing the graphics to something a bit more respectable >_<



Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 22, 2011, 10:58:27 PM

Edits:

(http://img651.imageshack.us/img651/91/capturetiles.png)
Messing with a different tilesheet, although at 9x9 for each sprite its not looking too good >_< may increase that later if I cant come up with anything. Could use some help if anyones got any

The plugin hook system has been implemented, so I should probably write a plugin to properly test it :P

And something else that seemed pretty important about the ai...or maybe it was the generators....I cant remember and its 2am and Im going to bed for now, Ill edit this later when I remember >_<


Title: Re: The Mod-Cave (working title)
Post by: Xion on January 23, 2011, 01:56:02 AM
I'm curious as to how you'll handle multiplayer gameplay-wise. Will it be real-time, or semi-real time or...something different o_o

The generate-as-you-go part sounds delightful, though - it'd be interesting to generate parts of the world based on where you've been and such, like coming upon a razed village, and then, seeing that you've been there, generating a group of survivors in exodus for you to come across, and then coming upon a camp of the soldiers who razed the place, and finally the horde army they belong to...or something simpler, I dunno. In any case it sounds rad, and mod support is always a wonderful thing.


Title: Re: The Mod-Cave (working title)
Post by: Doktor_Q on January 23, 2011, 11:01:15 AM
Personally, I find the ASCII graphics rather charming.

This actually looks like something I was working on, only a lot better executed. Now I won't feel so bad about not using that idea.


Title: Re: The Mod-Cave (working title)
Post by: Nugsy on January 23, 2011, 11:12:08 AM
I love tiny graphics!  :-*


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 23, 2011, 09:52:55 PM
I'm curious as to how you'll handle multiplayer gameplay-wise. Will it be real-time, or semi-real time or...something different o_o


The generate-as-you-go part sounds delightful, though - it'd be interesting to generate parts of the world based on where you've been and such, like coming upon a razed village, and then, seeing that you've been there, generating a group of survivors in exodus for you to come across, and then coming upon a camp of the soldiers who razed the place, and finally the horde army they belong to...or something simpler, I dunno. In any case it sounds rad, and mod support is always a wonderful thing.

Not really sure what you mean by semi-real time, but excluding lag it should be real time >_<

As for generation events, I do plan on adding a couple of small events, maybe short chains but nothing too complex/long
although the "generators" can also just read from a file too, when the server calls a plugin for a map at [x,y], the generators from the plugins take full control on the output, so the developer can generate a fully new map of whatever type, a map that had been generated from a previous server run being read from a file, or a map that the developer may have written in a level editor, like a town or something!

Personally, I find the ASCII graphics rather charming.

This actually looks like something I was working on, only a lot better executed. Now I won't feel so bad about not using that idea.

I am kinda fond of them, they make the objects open to speculation plus its a lot easier on me :P
However it also makes it difficult to find text that fits the part you are trying to portray without stretching the idea too far and getting obnoxious
Ill probably end up with a ascii/drawn hybrid like you see in the pic >_>


Title: Re: The Mod-Cave (working title)
Post by: billythegoat101 on January 31, 2011, 04:15:07 PM
(http://img836.imageshack.us/img836/7607/loslightinggradient.png)

Added line-of-sight to the lighting + a gradient
And I got kinda carried away while scratching out my servers domain :P
Big box on the right is the incoming chat window, and the small one is the outgoing

You cant really see it here but the big black box is actually 1 big map  + 8 smaller ones surrounding it to preview the next map your about to move when you approach the edges

Kinda just re-realized that I still need to spice up the gui, since it looks lonely and empty and bald and bad... could use some advice there since Im under the impression that thats about the best java guis can get, but I really hope not >_<

Also worth noting, the generator + AI are now fully run off a plugin system, so the server is now basically the shell console thing I was planning, albeit a bit less fancy, but creations never live up to the mind bogglingly beautiful things that you originally concoct in your dreams :P

This really just leaves optimization and decent content
Hopefully that gets done relatively quickly between schoolwork >_>


Title: Re: The Mod-Cave
Post by: billythegoat101 on February 05, 2011, 10:23:01 PM
(http://img843.imageshack.us/img843/6733/2511g.png)

What Ive done:
Wrote a glimpse of a simple room generator to hold the tribes, as seen above
Added an inventory
Made the gui look kidna better
Rewrote a couple unbelievably crappy things to make it faster

So really the entire basis of the project is finised, ie the shell of a server that runs fully off plugins
All thats left is for me to add is the starting plugin to make it a game, but soem of it is kinda already there

Hopefully I can get a pre-alpha thing out soon to test for speed issues with more than 5 clients