PDA

View Full Version : IRC text based games



edg3
25-10-2007, 05:12 PM
Has anybody ever played these?
Ive been an active player on 2 different ones (if you can call them that)
- Commander
- All Out War

Im working with a few people on a version of one for fun running on shadowfire ( #aoc ). Im going to start writing one from scratch as we're using All Out War as a base at the moment.
The only issue I have is having to use mIRC script, which will get the job done, but Ive been having all sorts of interesting problems, to do with DCC, etc. which hopefully will be ironed out. Is there another program / library I can use to achieve the same effects? Ive attempted using winsock like some tutorials suggest for connection to IRC, but I just dont fell Im getting anywhere.

concept:
The concept Im pushing for will go along the lines of the same style of gameplay, but with a different push idea wise. Instead of the usual "gang" system and "energy" system, I want to add a new system Ive been thinking about for a while now.
I'll post more about my plans and Ideas soon, but wanted to start the idea ball rolling, see what people had to think about it :)

Thaumaturge
27-10-2007, 06:23 AM
I'm afraid that I don't know the games that you mentioned, and a search on Wikipedia didn't turn up anything - could you perhaps expand one what you're trying to create, and what your designs are, please?

I'm afraid that I'm not particularly familiar with IRC gaming, so I'm not in much of a position to offer advice on any technical problems that you might be having, I don't believe - hopefully someone else within the community is in a better position than I to help you. ^^;

edg3
29-10-2007, 02:41 PM
I'll be able to give more help on this soon :) and a whole breakdown of what it consists of. :)

EDIT:

[16:08:11] <WAR-GEN> All Out War v4.0.1.5
[16:08:11] <WAR-GEN>
[16:08:11] <WAR-GEN> For help, please go to http://aow.atrum.org/wiki
[16:08:11] <WAR-GEN>
[16:08:11] <WAR-GEN>
[16:08:11] <WAR-GEN> Safe House
[16:08:11] <WAR-GEN>
[16:08:11] <WAR-GEN> [1]: My Joint
[16:08:11] <WAR-GEN> [2]: Hospital
[16:08:11] <WAR-GEN> [3]: Bank
[16:08:11] <WAR-GEN> [4]: The Streets
[16:08:11] <WAR-GEN> [5]: Gym
[16:08:11] <WAR-GEN> [6]: My Gang
[16:08:11] <WAR-GEN> [7]: My Business
[16:08:11] <WAR-GEN> [8]: Awards Hall
[16:08:11] <WAR-GEN> [9]: History Logs
[16:08:11] <WAR-GEN> [10]: Memo Service
[16:08:11] <WAR-GEN>
[16:08:11] <WAR-GEN> [PRIZES]: Check random prizes
[16:08:11] <WAR-GEN> [SHORTCUTS]: View shortcut keys
[16:08:11] <WAR-GEN> [TRIVIA]: Play some Trivia and earn some cash
[16:08:11] <WAR-GEN> [POLL]: Vote on the current Poll
[16:08:11] <WAR-GEN> [SETTINGS]: Change account settings
[16:08:11] <WAR-GEN> [RULES]: Game Rules
[16:08:11] <WAR-GEN> [ABOUT]: AOW V4 Info
An IRC text game or MUD is played normally using a dcc chat with the game bot. messages are sent (eg. 4 for the streets) to interact with the bot, some games have grown to user bases of thousands.

You gain money from factories that produce income every 40mins in most cases, and take part in gang wars.

Its like your modern MMO but with no graphics, minimal system requirements, and the same strategic feel.

MOST of the bots for these games are made in mirc script using the mirc client, and save their data in ini files, but by writing a custom server and client program that would use an Access, SQL or MySQL databse to store data would be more efficient.


[16:15:59] <WAR-GEN> The Streets
[16:15:59] <WAR-GEN> "You wander around the streets and look for a place to go to."
[16:15:59] <WAR-GEN>
[16:15:59] <WAR-GEN> [1]: Betting Arena
[16:15:59] <WAR-GEN> [2]: Shop
[16:15:59] <WAR-GEN> [3]: Casino
[16:15:59] <WAR-GEN> [4]: Simulator
[16:15:59] <WAR-GEN> [5]: Safe Cracking
[16:15:59] <WAR-GEN> [6]: Lottery
[16:15:59] <WAR-GEN> [7]: Knockout Ring
[16:15:59] <WAR-GEN> [8]: Energy Shop
[16:15:59] <WAR-GEN> [9]: Money Laundering
[16:15:59] <WAR-GEN> [10]: Drug Market
[16:15:59] <WAR-GEN> [11]: Jail
[16:15:59] <WAR-GEN>
[16:15:59] <WAR-GEN> [X]: Go back
The game is made more interesting with side games and alternate means of getting cash, from betting on cage fights to entering the lottery.

The concept that I have been aiming at is aimed at being on a slightly larger scale, with the same minimum requirements, but no need for the IRC server, so running its own chat system and "info room" to show whats happening in the game.

The main areas that need to be achieved:
- Strategic RPG styled game play
- Online ranking and control of characters
- Turn Based Market System
- Customised Forums
(the above mentioned things arent all, but are the main elements)

Forums:
- Users have one registration to access the game and access the forums
- Forums display the users rank and network etc.
- Forums have a "log" section to easily view logs

The hardest part will be the forums, but that can all be organised after the game is nearly complete.

edg3
07-11-2007, 04:35 PM
Concepts:
The game idea revolves around DOGMAs (networks), for now, and they control cashflow between the areas, and keep the game even for every network.
Players can move to another network once a day, and once a week the networks go to war for a large event.

there are 3 levels of power:
- power on server (top 10 players: overall)
- power in networks (top 10 players: specific networks)
- power in battle (top 3 players. uses a calculation giving points for stats, and actual attack, etc)

The idea isnt for it to be a killemall styled game, but in the weekly event there will be that element, and players CAN fight each other if they want. You dont have levels per say, but you do have a rank according to your power in battle. By removing levels, we dont need a simulator, and can make a more strategic way to gain exp, using cash as the main element used in gaining power.

I thought about the battle system for the event, and players will build a "squad" and they will form the head of the squad, deciding on its final actions in the event, ie. decide if his squad stays and defends his DOGMA or if it will go and attack a DOGMA, and more importantly which specific DOGMA. and then theres a chance factor involved which moves them around the DOGMA.

The war system will work using an imaginary grid, eg. on a server wil 9 players, we would use 3x3 for each DOGMA's grid. and the server would move the player one up/down/left/right until a battle occurs, calculate the battle, and then give the result, winning giving points. This would work in waves so every 8 minutes there would be a 2 minute break to decide on a new strategy, and then it would start again, running for an hour or 2 hours, and while the war happens, there will be a way to "damage" other networks in the 10 minutes, where 3 digit codes will be used (as an example, will probably change) and if you hit the right code, you will deactivate a section of the networks grid, and choose a new code, then the other network can reactivate it by getting the code.

The ideas havent been balanced, but that makes up the core of the system, and then its down to making the strategic part worth playing.


Server Client Ideas:
The Client would connect to a database on the server (pc) which would hold their actions for the controling app, which would "reply" in that database and give back results and information.

The simplest way to control this would be to use CSV's (comma separated values) with in a large database field (eg for access: a memo) and maintain communication like that.

There are obvious problems that you could get when using this method, but its a lot safer than some of the other methods I was looking at using.

Thaumaturge
08-11-2007, 03:04 AM
The game sounds interesting. ^_^

Am I correct in guessing from what you've said that the theme will be hacking?

As to the gameplay, what does one do when not involved in a war? You say that it is not intended to be a purely "killemall" game, so what does one do for the most part?

As to your battle system, perhaps it might be a good idea to print out the grid, if one's grid coordinates and those of others are important.

Hmm... have you considered using a low-graphics approach, such as that used by Urban Dead (http://urbandead.com/), instead of a text approach? It might be more difficult to create, but might bring greater rewards as well.

edg3
08-11-2007, 11:14 AM
Some of it will be themed to be similar to "hacking", but I was thinking more code-breaking etc :P

During a war, you will battle people, but on the square of the grid you are on, the reason I said not purely killemall, is that you train to gain strength etc, and work with the games economy to get cash for your training, and the only time it is necessary to have a blood bath is during the wars, but without stopping players from attacking one another at any other time, but make it so people can switch between "FFA" and "protected" modes, ie. if im in FFA I can expect to be attacked, if Im in protected I cant attack people and they cant attack me.

The grid systems can be printed out, but you can only see who is on the same square as you.

The text idea is how I want to manage the parts where you actually do things and control yourself, but i doesnt rule out making a minimap and map of the networks including economic info, etc. as a sort of overview of the "game area", and Im aiming at something less turn based :)

I just remembered MUD stands for Multi User Dungeon.

dislekcia
08-11-2007, 03:20 PM
I just remembered MUD stands for Multi User Dungeon.

I was about to ask you if you've played any MUDs. Specifically some of the Rom/Diku variants that have things like paintball or laser games implemented in them. Those might help you a lot, conceptually.

-D

edg3
08-11-2007, 04:09 PM
Thanks dis, I'll definitely look those up.

edg3
10-11-2007, 03:33 PM
Ive had some play time in between my pc crashing, and I like the way they have lots of flexibility and extensive detail, but that to me is too much reading :P



"You are at the top of a tower, you look around and only see a trapdoor below you. you try the trapdoor and its locked"
> tip
"Use 'open down' or 'open d' to open/unlock the trapdoor"
> open d
"you open the trapdoor and see a ladder from where you are standing at the top of the tower."
> d
"you go through the trapdoor and see discs in all four directions....... go to all of them to be allowed to go further down."
> w
"Welcome traveller....blah blah blah blah...... you should speak to this one first!"

AAAAAAARRRRRRRRRGGGGGGGGHHHHHHHHH!!!!!!!!!!!!!!

Its probably just me but I like it when I dont need to read 20 pages of help file to find you move using n, e, s, w, u and d.
Interestingly enough there was a lick command, but I couldnt lick the trapdoor....

UnlimitedRPG is a better example (I feel bad not having better competition entries) but is still too linear, and has no multiplayer element to it. This game idea has no name yet, but Im nearing a point where all the calculations for the basic game engine are 100&#37; and then I can get on to setting up the client for it, the registration web, and forums, and then I'll have more to show. Currently from the server side I can run all the basic funcitons that have been written so far, and thats about it.

Current Completion:
- Server program
- Player Database
- Basic Functions:

banking (60%)
training(100%)
network economy (50%)
income (100%)

WIP server side:
- Banking
- Network Economies
- Resource System
- Client Database handling of messages to connect the two
(Including testing for the best string handling techniques)

Thaumaturge
11-11-2007, 02:42 AM
It sounds as though you're making good progress - I'm glad to hear it. ^_^

I look forward to seeing how this turns out.

edg3
11-11-2007, 09:40 AM
It sounds as though you're making good progress - I'm glad to hear it. ^_^
I study for an hour, then do my own other stuff for 30 mins. :P progress is slow and painful.

This morning in between studies Ive worked out the ranking system:

Your stats make up you score, for those that are interested:


score = ((str + def + vit) * 0.2) + ((addstr + adddef + addvit) * 0.1) + ((spec1 + spec2 + spec 3)/3 * 0.1

str = strength
def = defence
vit = vitality (affects your HP)
addstr = additional stregth (your weapon)
adddef = additional defence (your armour)
addvit = additional vitality (need a cool item type for this)
spec1, spec2, spec3 = misc equip additional stats (spec1 is str, spec2 is def, spec3 is vit, and each misc equip gives different bonuses.)

Your position is shown as a percentage, with the player with the highest score being "100&#37;" and you are then compared and show as what percentage of that player.

eg.
Top player score: 3200
Your score: 2200
(2200/3200)*100 = 68.75%

You would effectively be ranked as (your score/ top score) * 100 rounded off to two decimal places

This would show you if you are progressing faster or slower than the leading player by how much your rank changes. You would easily be able to compare yourself to other players aswell without giving away your stats, allowing you to keep your strategies secret if you want. :)

Kensei
11-11-2007, 08:20 PM
How are you creating this game? I assume you are using a scripting/coding of language of sorts?

I play IRC based games, but they are classified as freestyle RPGs really - each person posting their character's actions with a SM (Ship Manager - same as the DM in D&D) determining the progress of the story. I suppose that could also be converted to a 'game' of sorts...

Hmmm

::Kensei runs off with her idea::

edg3
12-11-2007, 07:05 AM
Actually its all in Visual Basic 6 right now, and sitting next to me are two 1k+ page books on Access, a 1k+ page book on SQL, and two 1k+ page books on Visual Basic... :P

I chose VB because I have the most resource for it, and have had experience working with databases in it.
I would like to make the client in something like GM, but have yet to find ODBC resources for GM.


each person posting their character's actions with a SM
Replaced with a "communication" database, that stores what you send in for the server to process.



SM (Ship Manager - same as the DM in D&D) determining the progress of the story.
The server app will take what it gets in the communication database, and give a summary of what happened if you did multiple things, or it will give you the full details of what you did if you chose to do one action.

The only problem I have is making it as efficient at working with the databases as possible, so that if it does grow to a large number of player it wont slow down...A
Im most worried about how often it must check. and how quickly it can process hundreds of calcs, and need to work around having a refresh time that wont kill the pc its being hosted on. :P

As for the needs of the interwebs: it shouldnt be bandwidth intensive for the server (even if there are 100+ players) as the main pieces of text will be stored in the client (ie. menus, etc), and I can make a nice string handler for my server and client to optimise messages that will go into the database.


::Kensei runs off with her idea::
lol :P

Tr00jg
12-11-2007, 12:31 PM
While hopping around on the Shadowfire network last night, I discovered your channel. It was "offline".

Anyway, this is all very interesting, especially the part about data management. I am curious to how it all turns out. Keep going!

dislekcia
12-11-2007, 01:22 PM
I really don't know if going with a database for user interaction is a good idea. Why can't you simply have a custom app that buffers IRC lines? The database is going to be a big slowdown for you, especially seeing as you're going to have to be running something server-side to capture the text from the IRC channel to the DB anyway, why not move the logic in there?

Yes, you need storage for your character info and stuff, but it only needs to be in a DB when your app shuts down.

-D

edg3
12-11-2007, 01:32 PM
There will be no IRC needed in the interaction, but rather a client app.

The idea is mostly to cut out the need for IRC in this.