Aller au contenu

Photo

My modules become a mess... any tips?


  • Veuillez vous connecter pour répondre
7 réponses à ce sujet

#1
Zeke

Zeke
  • Members
  • 46 messages
While I am making a module, I am always reaching a state where it slowly becomes a mess.

Can you people here share some advise on how do you name or as a whole plan the variables that check the states of different stuff in your module, like plot progression, npc/henchman relationship or other objects?

Do you use programs like Word/Excel to take notes of the variables that you are using?

For example let's have a simple quest to rescue a princess and the var PrincessSaved = 0, if she is saved, the var becomes 1, but what if we have to register an outcome in which the princess dies? Then we make PrincessSaved = 2, or we create another var isPrincessDead = 1?

Or concerning henchmen relationships, how do you keep track of them?

Any knowledge sharing or module names where one could look for ideas will be greatly appreciated!

#2
Tchos

Tchos
  • Members
  • 5 030 messages

Do you use programs like Word/Excel to take notes of the variables that you are using?

For example let's have a simple quest to rescue a princess and the var PrincessSaved = 0, if she is saved, the var becomes 1, but what if we have to register an outcome in which the princess dies? Then we make PrincessSaved = 2, or we create another var isPrincessDead = 1?

 

Use the journal.  Events such as hearing about a princess that needs to be saved, saving the princess, or finding the princess dead are all significant events that should be recorded in the journal anyway, in which case you will have a variable right there that tells you whether the princess has or hasn't been saved or if she's dead.  And you have a journal editor with all of the variables already organised with descriptions telling you what they mean, so no need for Word/Excel.

 

I use quest stage 0 to mean you haven't even heard of the quest, stage 10 to mean you've heard and accepted it, stage 100 to mean you completed it successfully (stages between 10 and 100 are for new information and developments during the quest), and any stages after 100 are failure variations such as the princess dying.

 

Counting by 10s is a way to leave room for additional developments that you hadn't planned for.


  • Grymlorde aime ceci

#3
KMdS!

KMdS!
  • Members
  • 189 messages

Tchos, How about using bit based? 011001 as an example for 25? You can check for using bitwise. 1,2,4,8,16,32,64,etc...



#4
Tchos

Tchos
  • Members
  • 5 030 messages

Yes, bitwise checks are another popular method, mainly because you can combine multiple conditions in one number by adding them up, but I personally find them harder to read and work with.  I find it easier just to make journal entries that cover every possible combination of factors in a quest, because even though it requires more journal entries, it's easier to refer to them and see exactly what they mean in the journal editor.  Of course I would recommend using whichever you find more effective or convenient.



#5
Baaleos

Baaleos
  • Members
  • 1 322 messages

Might sound overkill, but if you are having trouble keeping track of story plots etc

I use Notepad++ to write the story / plan for a quest , system etc

 

Its a practice I started doing, mirroring what we do in work. (Product Development for a Software firm)

Its a somewhat loose adaptation of Agile.

 

 

BA (Business Analysts)

Developers

QA (Quality Analysts) 

 

We all get together, discuss upcoming features, and write down 'stories' for the features.

 

Eg:

A BA may have given us a broad topic/feature such as.

 

As a Customer

I should be able to get my Login Credentials when forgotten

So I can continue to use the awesome web site.

 

 

Putting this in context for a creative story.

 

 


As a player

When I beat the boss of level 5

My character will be granted the ability to teleport to his stronghold.

 

So this is a broad topic: What our player (customer) is going to want to achieve.

 

 

You might think that this has no value what so ever, but believe it or not, sometimes these generic phrases when looked back on, can help you identify when you have gone off on a tangent and your plan has gone off course. So they serve a function to keep you on the right track.

 

So As a builder/scripter you could then break this down into other tasks

 

 


  As a builder

      * Must create Level 5

         Use Dungeon Tileset

         Enemy group will be Wolfmen

       * Must Create Boss

         Will be named 'Garog the Blind'

         Will have claw weapons that deal high damage proportional to his own health levels (Scripting task)

         On Death - Set variable 'PC_KILLED_LVL_5_BOSS' = 1

 

   As a scripter

       * Must create script for claw weapons: Deal 2d12 Damage + 5% Missing health; (Attacks grow stronger closer to death)

         Attach to claw weapons

       * Create Death Script for Boss  : PC_KILLED_LVL_5_BOSS = 1
       * Prevent Player from re-doing the quest, by checking for the PC_KILLED_LVL_5_BOSS variable.

       * Develop the teleport power - See task TELEPORT_01 (Might need a task of its own)
       * Award the player teleport power (TELEPORT_01)

                  

 

 

I once worked in a project management tool called redmine - which looked very promising for managing a PWServer.

You could create your project, list all the subtasks for the project, assign them to other users/people in your staff/project.

You could then check each item off on the list.

Project management tools such as redmine, Jira and maybe even mantis etc : They will also allow you to move these tasks into various states.

Such as peer review, rejected, in-progress etc.

 

 

As far as the variable tracking goes - I recommend keeping it stored somewhere in relation to your project -> quest -> feature layout.

That way you can find all variables related to a specific questline, or even search for the variable, to find out what function it serves.

 

So using the above structure -

the Builder will not have finished his job until his 2 tasks are complete - using the specifications provided.

the Scripter will not have finished his job until his 5 tasks are complete - using the specifications provided. (he might need to wait for the builder to make the claw weapons though)

The feature/deliverable wont be finished, until everyone has completed their tasks.


  • Terrorble aime ceci

#6
KMdS!

KMdS!
  • Members
  • 189 messages

just a quick two cents worth fro me.....I have a nss file inside the module labeled _a_1_thingstodo and a second _a_1_dev_notes and a third _a_1_misc...in them I note all I do. I use textpad with nwsyntax set up to open the files from within the module folder when I am working on the module. This way anyone working on the mdule has access to all notes.

 

I also have SVN/Tortoise set up on my machine



#7
Zeke

Zeke
  • Members
  • 46 messages

Thank you for all the suggestions!

 

Baaleos, that is pretty descriptive advice. I really appreciate it. Making everything that should be created as a list, makes everything so much more organized.

 

 

As far as the variable tracking goes - I recommend keeping it stored somewhere in relation to your project -> quest -> feature layout.

That way you can find all variables related to a specific questline, or even search for the variable, to find out what function it serves.

 

I can't quite understand what you mean by project-> quest -> feature layout. Can you explain, thank you!

 

It never occurred to me that I can name variables by incrementing by 10. This will remove a lot of my headaches. Awesome!

 

I have been thinking of using Trello for organizing. Has anyone used it?



#8
Baaleos

Baaleos
  • Members
  • 1 322 messages

Thank you for all the suggestions!

 

Baaleos, that is pretty descriptive advice. I really appreciate it. Making everything that should be created as a list, makes everything so much more organized.

 

 

 

I can't quite understand what you mean by project-> quest -> feature layout. Can you explain, thank you!

 

It never occurred to me that I can name variables by incrementing by 10. This will remove a lot of my headaches. Awesome!

 

I have been thinking of using Trello for organizing. Has anyone used it?

 

The reason I said Project -> Quest -> Feature - is because the process can be used for more than just quest or story writing.

 

Eg: Making a Subrace engine (A Project / Feature in itself)

or an Epic all encompassing quest line (The scope of a project, for a quest)

 

I've used trello - we actually use it at work for tracking personal development / objectives in line with career progression.

 

TBH - Something like Mediawiki can also be very good for project management.

It makes creating pages and writing very easy.