Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (477)
Games in Android Showcase (106)
games submitted by our members
Games in WIP (533)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Flexible rpg character/world representation idea  (Read 3000 times)
0 Members and 1 Guest are viewing this topic.
Offline zingbat

Senior Member




Java games rock!


« Posted 2004-09-05 14:59:15 »

My idea for a flexible rpg char/world representation is a mix of the systems like Fallout and Daggerfall (Morrowind predecessor).

This is a flexible system in the sense that the game designer can choose whatever attributes/skills/effects he wants to use wihtout the need to make a completely different game and mess with Java code. This is very important because it saves time and resources since a programmer isnt needed to rebuild the engine. This may sound odd said from a programmers mouth.  Grin

The AI can be fully integrated with this flexible system and like above doesnt need to be changed whenever the game designer changes the rpg system.

I have taken what i consider to be the strengths of every system i mentioned above. Anyway the game designer can implement it in any way he wishes so.

From Fallout:

The lack of classes is a strength in Fallout. What defines the player class is his choice of skills and the bonus he obtains from making social choices and being connected to the right people.

Another strength in Fallout are traits and perks. Traits are perks taken when the game starts that represent a characteristic of the player. Perks are special bonus, characteristics, that are obtained during the game and allow for the player to fine-tune his character.

Attributes are very hard to raise in Fallout. This is good because they define the player character and this should not change wildely.

Another strong point in Fallout is that players actions change the world. However only at the end of the game.

Overall Fallout rules are good enough to provide for a very balanced game. Rules must so be flexible.


From Daggerfall:

Daggerfall experience is not distribute manualy but based on skill usage. I consider this a strength.

Daggerfall reputation and faction system is revolutionary. In Daggerfall there is no notion of good or evil that plagues most rpgs. Everything is relative. You may be aproved by a faction from robing banks (reputation increase) and disaproved by another for doing the same thing.

Reputation in Daggerfall is also local. You can be loved in a province and hated in anther.

Guilds in Daggerfall provice for social advancement and offer bonus to the player as important as the best weapon or armor suit. The player can be assaulted by monsters and foes but also by the bag tong of merchants and tavern keepers. To defend themself the player must have good social links and a good reputation. However a bad reputation is not necessarly a bad thing since new doors will open to the player and a good thief can also be a vampire or a werewolf at the same time and still have a remarkable good reputation with the nobility and the law if he does things right.

I see a couple of problems with these two systems that i will try to solve in the next post.
Offline zingbat

Senior Member




Java games rock!


« Reply #1 - Posted 2004-09-05 15:18:20 »

Fallout problems:

While Fallout doesnt provide classes Fallout fails to represent interdependencies between skills. It doesnt make much sense that a player with can learn 100% bastard sword without learning anything of about other similar weapons like katana. If the player learns a combat skill then he should also learn something, by similarity, about other combat skills.

Solution: this could be solved by associating skills in groups or by using a skill tree. Whenever the player improves one skill the other in the same also improve in a smaller percentage of experience.

Fallout lets the player distribute xp. This means that a player who spends his time killing rats can become a rocket scientists if he decides to put his xp points in science instead.

Solution: xp should be automatic. The player improves the skills he uses.


Daggerfall problems:

Daggerfall groups skills into minor/major and other skills. Making the skills on these groups the only ones that can affect leveling. This improves specialization at the cost of forcing the player to play a certain way.

Solution: leveing is unnecessary when we have skill groups that affect each other. Specialization comes naturaly since a player that improves mostly combat skills will become an excellent warrior, for instance.

Leveling in Daggerfall affects chances. The greater the player level the powerful is his independently of his skills or attributes.

Solution: again level is unnecessary. When a player skill reaches a high value the player can gain perks that give bonus to the use of that skill.

Attributes in Daggerfall are distributed automatically.

Solution: Attributes and skills affect each other retrocatively. Each attribute has a certain weight in each skill. Whenever the player raises a skill he automaticaly raises its associated attributes by a small percent. Attributes influence how much xp the player gains from using a skill and how effective the skill is.
Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #2 - Posted 2004-09-05 15:19:33 »

Please - don't. You are posting in completely the wrong forum (why don't you read the names of hte other forums?) and there is no moderator who we can get to move your posts once you've made them.

PS nothing you mentioned is "revolutionary", it's been around for decades. If you really want to work on something like this then I have some code you might want to start with, but you have a HELL of a lot of work to go before you can even think about starting to write a game with this stuff - I suspect you haven't realised yet quite how incredibly complex the simple-seeming parts of this actually are when you try to implement them.

malloc will be first against the wall when the revolution comes...
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Online princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #3 - Posted 2004-09-05 15:38:37 »

Aye, I agree. This is so non-trivial that to try and get a meaningful discussion on this board is a bit like attempting to phone billg and your opening greeting being "So Bill, what's the secret to making billions of dollars?"

'Course, we could have a magic kebab discussion on it ("Wouldn't it be great, right, if we had this enormous doner kebab, right, that like, never ran out? etc.")

Cas Smiley

Offline zingbat

Senior Member




Java games rock!


« Reply #4 - Posted 2004-09-05 15:58:58 »

Based on what i have considered above this is the flexible system i was talking about. It uses the following elements:

Attributes - an attribute can be anything and any number. Each attr can be on a table that relates the weight it has on each skill. Common attributes are strength (focused physical power), endurance (resistance and physical power  storage), speed, agility, perception, inteligence, charisma, wisdom, etc...

Skills - these measure the ability of the player on performing an action. Each skill is to all attributes each attribute has a certain weight on the skill. The success of the action may be dependent on the player own skill while using the mouse or keyboard. In this case the game is a mix action/rpg and the skill value only serves has a help or as an obstacle.

Actions - actions represent what the player can do to change the world. A new action will most likely result on a engine change. Usually actions can be implemented on a scripting language to avoid hiring a well paid programmer to change the engine code. Wink Common actions are:

modify object attribute, modify object skill,
affect world objects (transform, enable, disable, show, hide)
change scene, play music, play sound, play animation
initiate ai package, stop ai package,
cast spell, initiate attack sequence,
activate item, send verbal message to object,
operate object with another, combine game objects,
etc...

Each action may or may not have a skill associated with it.

Experience tables and usage modes - these define how much experience is given and in which circunstancies when the player uses a certain skin. A skill can be used in several different ways (skills variants). For instance a critical strike takes more agility and perception than strength. A berserker attack takes all strength and speed and barely any agility.
Skills also have skill groups and a value that measure what percentage of xp gained by using a skill is shared to the other skills in the same skill group, per usage mode.

Dialog and messages - In dialog the player sends verbal messages to an npc capable of dialog. The player doesnt need to use a dialog window. Dialog messages can be sent the using a similar scheme to firing an arrow: target an npc and speak. Other actions can be considered messages like emiting a sound from a foot step or a moving shape image that reaches the player eyes.
The message system is fully integrated with the AI, sensors (sound, vision) and collision system. Dialog can be affected by skills and experience like other actions.

Game entity - each game entity is an object capable of performing chages his the world based on its set of actions, skills and attributes. An entity also has a set of AI packages that define the entity as active or passive. A rock , for example is a game entity completly passive that only provides colisions and the capabilty to break in pieces.

Structure  - a human, for example, can be structured in body parts. In a game the status of each body part can affect the performance of a certain action that depends on it. The human body is thus a system composed of several subsystems like the skeleton, muscles, etc...

Reputation and Factions - Factions are social structured entities tha old reputation information about the player and other factions. Factions also have heir own AI and common objectives in the game.

Influence Network - An influence network represent, for each faction, the field of influence of each faction over the others. This is a weighted graph.
Online kevglass

JGO Kernel


Medals: 120
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #5 - Posted 2004-09-05 15:59:27 »

Cynics! Everywhere! Discussion can exist for discussions sake. Smiley

However, forum choice could have been better... I'd suggest Game Play / Design if this should ever get moved by our never present board admins...

Kev

Offline zingbat

Senior Member




Java games rock!


« Reply #6 - Posted 2004-09-05 16:05:30 »

Quote
Please - don't. You are posting in completely the wrong forum (why don't you read the names of hte other forums?) and there is no moderator who we can get to move your posts once you've made them.


Its done. Discuss it if you want to but let others speak for themselves.

Quote


Mmm you want to discuss this after all.  Grin No its not that complex or revolutionary. Its based on my experience on playing rpgs. This kind of knowledge you obtain from playing great games not from programming expertise.

The reputation system is not as complex as it looks like.
Offline zingbat

Senior Member




Java games rock!


« Reply #7 - Posted 2004-09-05 16:08:06 »

Quote
Cynics! Everywhere! Discussion can exist for discussions sake. Smiley

However, forum choice could have been better... I'd suggest Game Play / Design if this should ever get moved by our never present board admins...

Kev


He sorry about that. I was in doubt if i would put this here or in the gameplay forum. But since i also mention some tricks how to program this stuff i decided to put the two on this forum.
Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #8 - Posted 2004-09-05 16:34:44 »

Quote


Its done. Discuss it if you want to but let others speak for themselves.


Huh?

Quote

Mmm you want to discuss this after all.


Only in an appropriate forum.

malloc will be first against the wall when the revolution comes...
Offline Middy

Junior Member




Java games rock!


« Reply #9 - Posted 2004-09-05 17:58:58 »

I agree on the system. Its a good example of emergent Gameplay. But for the game designer it rises a problem. He has to forsee the strategies and "best practice " emergign from the system. The more complex the system is, the harder it is to forsee this.

In game design there is a golden rule, if there is one strategy that is dominant. There is lack of choice and then its a bad game, or rather it has a low replayability.



When do I get my makeMyGameAsILike() extension?
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline JasonB

Junior Member





« Reply #10 - Posted 2004-09-05 19:59:19 »

Quote
Only in an appropriate forum.

OT, but you have got to be kidding!?  You're quibbling over the fact that he's posted a discussion topic in the general discussions area?  What, so it's physically painful for you to have a link on a page that you don't agree belongs there?
Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #11 - Posted 2004-09-05 20:49:42 »

That came across not quite as it was meant. Personally, I'd get involved if this discussion were on MUD-DEV. But here, it's not worth it - I'd have to summarise years of discussions before we could be using the same terminology and discussing with reference to the same data points.

Aside from that, the OP started 2 topics and made 5 unreplied posts all in the wrong part of a forum not really appropriate for this. He'd get a much better response from GD.net, MUD-DEV, or somewhere else where the people who talk about this stuff *all the time* hang out.

malloc will be first against the wall when the revolution comes...
Offline zingbat

Senior Member




Java games rock!


« Reply #12 - Posted 2004-09-05 21:14:10 »

Quote
I agree on the system. Its a good example of emergent Gameplay. But for the game designer it rises a problem. He has to forsee the strategies and "best practice " emergign from the system. The more complex the system is, the harder it is to forsee this.

In game design there is a golden rule, if there is one strategy that is dominant. There is lack of choice and then its a bad game, or rather it has a low replayability.


The design issues i leave to the game designer. Thats why i posted this here in doubt of posting in the game design forum.

The system above can be used to flexibly represent any character system, with a certain compromise that allways exist, using the following elements:

Attributes, Skills, Actions, Experience Distributions, Messages, Game Entities, Structures (Skeletons), Factions, Influence Networks. Each of these would most likely translate directly into java abstract classes.

But the designer is free to choose whatever style his game is going to be. A linear game or an open rpg. A complex game or an easy to learn game. There are good linear rpgs (DeusEx) and good open rpgs (Morrowind).

The advantages i claim are management advantages. Untrained people could easly modify everything by using gui forms and still have enough freadom to operate without resorting to changing game engine code, which is allways very costy.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

pw (24 views)
2014-07-24 01:59:36

Riven (22 views)
2014-07-23 21:16:32

Riven (18 views)
2014-07-23 21:07:15

Riven (21 views)
2014-07-23 20:56:16

ctomni231 (50 views)
2014-07-18 06:55:21

Zero Volt (45 views)
2014-07-17 23:47:54

danieldean (36 views)
2014-07-17 23:41:23

MustardPeter (39 views)
2014-07-16 23:30:00

Cero (54 views)
2014-07-16 00:42:17

Riven (54 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!