SoS-Board

It is currently Fri Aug 18, 2017 10:36 am

All times are UTC




Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: Structure & Dependencies
PostPosted: Mon Nov 26, 2012 7:25 am 
Offline
Site Admin

Joined: Sat Feb 11, 2012 9:02 am
Posts: 46
# last updated: 11.02.2013

When changing the source code one would like to know where the dependencies are. Classes are underlined. (d) means "not really up to date" (deprecated).

  • character.rpy: Contains the classes Stats and DSC (short for "Dating Sim Character"). Stats has no dependencies. DSC has a Stats reference and needs the global day initialized in script.rpy. Working and training is something DSCs do alone.
  • relation.rpy: Contains the classes Battle, Date and Relation. A Relation can exist between two DSCs and it holds their current Battle or Date (and exp, milestone etc.). Date and Relation need the globals day and maxDay (initialized in script.rpy) and Date needs the function nextDay(bool) from event.rpy. Leveling up relationships is naturally in Relation.
  • interaction.rpy: Contains the class Interaction, where all actions between characters are made. It contains a number of DSCs (probably all, but that is up to the developer) and their Relations. For the purpose of gifting and buying, it also makes use of Item[/s], but only as function parameter.
  • girlData.rpy: Contains the complete dialog with girls besides any special events, stored in global variables which are arrays themselves. Also contains the globals girlGiftEffect and dateLocationData. No dependencies.
  • girlNavi.rpy: Contains the complete navigation with girls, abstracted to the point it doesn't matter which girl one is talking to as long as the jump-in-label for a girl is added properly. Depends on the defined gGirls and pProtagonist ([u](Ren'Py-)Characters in script.rpy), and their defined interactions (Relation in relation.rpy and Interaction in interaction.rpy) and for the actual dialog on girlData.rpy. For gifting, the inventory-screen is needed, so it depends on screen inventory (screen.rpy), which makes use of the inventory (defined in itemDB.rpy) of Items (in item.rpy).
  • item.rpy: Contains the class Item, defined in such a way that the inventory is completely extendable. No dependencies, but one should first call Item.initialize(int, int).
  • itemDB.rpy: Initializes the different Items and the global inventory, also what different shop sells, a method to do that and what items do when they are used.
  • mazeDB.rpy: Stores (global) maze directions and the (global) maze in array form. No dependencies.
  • mazeNavi.rpy: Navigation for the maze. Depends on mazeDB.rpy and any variables needed for events that occur there, for now this would be the pProtagonist ((Ren'Py-)Character, defined in script.rpy) and the compass (Item, defined in itemDB.rpy). There are also a lot of maze variables which are initialized in script.rpy.
  • navigation.rpy: Manages the navigation through the locations of the game, being mainly a lot of labels and jumps. The Item store system, battle HP refiller and the actions for the DSC to increase stats or do jobs are there, too. It also uses gGirls and pProtagonist ((Ren'Py-)Characters in script.rpy) and inventory (in itemDB.rpy).
  • events.rpy: Contains events, like nextDay, different sleepings, kissing and unlockAll() to get all items once.
  • intro.rpy: The intro of the game, label is jumped to from script.rpy and jumps on to navigation.rpy. Depends strongly on the implemented intro, see yourself for what is needed.
  • ending.rpy The ending of the game, depends on the characters.
  • events.rpy, intro.rpy and ending.rpy depend strongly on the implemented content. See for yourself, what the dependencies are. See global variables for some certain ones.
  • credits.rpy The credits of the game. Wants two globals (see here, again)
  • script.rpy: Initializes the global variables. After label start shortly calls the item initialization in itemDB and returns to jump into the intro afterwards.
  • screens.rpy: Contains the important screens, especially the inventory screen. Thus depends on the global inventory from itemDB.rpy.
  • options.rpy: Contains the usual options and the default cheat options (which are global variables).

_________________
If you find mistakes in my English, feel free to correct me.

Pokémon Dating Sim Version 1.0 Alpha
Image


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group