fodev.net
General => Features & Articles => Topic started by: Slowhand on December 18, 2015, 12:32:24 pm
-
FOnline SDK scripts overview.
This will be a list of the script files from Reloaded version 1 source, which will help you find where to edit/modify values/scripts. I will updated them as I progress through them myself. This is done to help me and others following the FOnline tutorials.
Note:
- Definitions = assignment values to variables (for better understanding of the code).
- Macros = definitions of macro functions (functions used often, in different script files).
- Script files which contain only definitions or macros are colored greenish.
- Script files which contain other scripts than defines are colored blueish.
- Script files that are (supposed to be) related to other script files, but are unused or were never used are colored grayish.
- Script files listed nearby each other, without being separated by descriptions, belong together.
Table of Contents:
- Definitions and macros. (http://fodev.net/forum/index.php/topic,29835.msg261148.html#msg261148)
- Game mechanics. (http://fodev.net/forum/index.php/topic,29835.msg261149.html#msg261149)
- Areas / Maps. (http://fodev.net/forum/index.php/topic,29835.msg261150.html#msg261150)
- AI. (http://fodev.net/forum/index.php/topic,29835.msg261151.html#msg261151)
- Quests. (http://fodev.net/forum/index.php/topic,29835.msg261152.html#msg261152)
- Crafting. (http://fodev.net/forum/index.php/topic,29835.msg261153.html#msg261153)
- Inner logic. (http://fodev.net/forum/index.php/topic,29835.msg261154.html#msg261154)
- Client specific. (http://fodev.net/forum/index.php/topic,29835.msg261155.html#msg261155)
- Misc. (http://fodev.net/forum/index.php/topic,29835.msg261156.html#msg261156)
- Disabled/Unused. (http://fodev.net/forum/index.php/topic,29835.msg261157.html#msg261157)
-
1. Definitions and macros:
- _ai.fos
- _animations.fos
- Character animation definitions, macros.
- _bags.fos
- NPC default loot definitions. (What will a random NPC drop?)
- _basetypes.fos
- Critter type definitions.
- _client_defines.fos
- A lot of definition related to the client: message types, fonts, screen types, cursor, mouse, items, scrolls, keyboard keycodes, combat messages, effects, etc.
- _client_maps.fos
- Map definitions for client
- _colors.fos
- Macros and a function related to color.
- _defines.fos
- Lots of definitions and macros.
- _dialogs.fos
- Definition of dialogues, basically every dialogue file you use, must be present here.
- _entires.fos
- Definition of entires, these are placeholders where to spawn items, critters, cars etc.
- _globalvars.fos
- Server: Definition of global variables. These variables are used to control refill, respawn timers for craft materials like iron, fibers, etc.
- Client: Config of awareness perk, TC display, fog, etc.
- _macros.fos
- Macros for general usage.
- _mapper_defines.fos
- Definitions used by the Mapper tool.
- _mapper_macros.fos
- A few macros used by the Mapper tool.
- _maps.fos
- _math.fos
- Useful macros related to mathematics.
- _npc_pids.fos
- _scripts.fos
- Definition of some of the scripts.
- _time.fos
- Time calculation related macros, converting minute, hour, etc. to seconds.
- _town.fos
- Definitions related to towns, TC timer.
- _vals.fos
- A few definition of special values.
- _vars.fos
- Game variables, their type, boundaries and description. Since Dialog editor fails to add new game variables, these needs to be added manually.
-
2. Game mechanics:
- antiblocker.fos
- Script related to anti blocker mechanic, an invisible item/entity is placed to doors, chokepoints to detect if someone is standing on it for too long.
- brahmin_pen.fos
- brahmin_pen_h.fos
- brahmin_pens.fos
- brahmin_trader.fos
- brahmin_trader_h.fos
- brahmin_traders.fos
- Script related to brahmin pens and brahmin vendors.
- broadcast.fos
- broadcast_h.fos
- Script related to broadcasting, Town Control, GM messages, etc.
- car.fos
- car_seller.fos
- Script related to car mechanics and car purchase.
- caravan.fos
- caravan_h.fos
- Script related to caravans.
- cave.fos
- cave_critter_h.fos
- cave_critters.fos
- cave_groups
- cave_h.fos
- cave_item_h.fos
- cave_items.fos
- cavelog.fos
- Script related to population of caves, filling it with items, monsters, etc.
- Notes:
- Luck seems to affect the chance to find items in caves.
- To find items and critters in caves is 50%.
- combat.fos
- combat_h.fos
- combat_message.fos
- Script related to combat.
- Notes:
- Changing the effects of perks, or any other combat mechanics, or combat messages is most likely to be happen here.
- cutscenes_h.fos
- cutscenes.fos
- Script related to combat.
- dialog.fos
- dialog_altruist.fos
- dialog_factions.fos
- dialog_reputations.fos
- A lot of scripts related to general dialog functions like: Giving perks, Healing, Killing NPC, Day pass for Vault City, Reputation gains, Faction functions, etc.
- Notes:
- Logic for healing price is defined here as well.
- drugs.fos
- drugs_data.fos
- Script related to drugs, effects.
- economy.fos
- economy_bank.fos
- economy_bankaccount.fos
- economy_banker.fos
- economy_h.fos
- Script related to economy: bank, banker, traders, money transfers, etc.
- elevators_h.fos
- elevators.fos
- Scripts related to elevators.
- encounter_containers.fos
- encounter_guards.fos
- Scripts related to encounter, guard warnings when getting close, containers, etc.
- explode.fos
- explode_backup.fos
- Scripts related to explosions.
- faction_data.fos
- factions.fos
- factions_bases_h.fos
- factions_bases.fos
- factions_generic.fos
- factions_generic_bartender.fos
- factions_h.fos
- factions_names.fos
- factions_news.fos
- factions_player_h.fos
- factions_player.fos
- factions_recognition.fos
- factions_terminal.fos
- factions_vc_q_scoutsf.fos
- Scripts related to factions. Lot of things..
- follower.fos
- follower_capturing.fos
- follower_common_h.fos
- follower_common.fos
- follower_h.fos
- followers_menu.fos
- Scripts related to followers..
- geiger.fos
- Scripts related to Geiger counter.
- globalmap_groups.fos
- Scripts related to groups on world map.
- lockers.fos
- Scripts related to lockers/locks.
-
3. Areas / Maps:
- arena.fos
- arena_generator.fos
- Scripts related to Hinkley arena.
- map_barter_ground.fos
- map_bhcave.fos
- map_broken.fos
- cathdead.fos
- map_denbus.fos
- map_domination.fos
- map_gecko.fos
- map_ghostfarm.fos
- map_golgotha.fos
- map_klamath.fos
- map_ncr_army.fos
- map_npcmap.fos
- map_prospect.fos
- map_rq_cave.fos
- aa.fos
- aa.fos
- aa.fos
- aa.fos
- aa.fos
- a.fos
- .fos
- Map scripts resulting in default scripts or simple inits.
- map_arena.fos
- map_ares.fos
- map_boneyard.fos
- map_bos_lh.fos
- map_bosbunker.fos
- map_cathedral.fos
- map_encounter.fos
- map_frisco_mine.fos
- map_glow.fos
- map_hub.fos
- map_junktown.fos
- map_klam_tox.fos
- map_mariposa.fos
- map_modoc.fos
- map_navarro.fos
- map_navarro_sub1.fos
- map_nrc_downtown.fos
- map_ncr_prison.fos
- map_newreno.fos
- map_player_mine.fos
- map_playerfaction_hq.fos
- map_public_mines.fos
- map_raiders_cave.fos
- map_raiders_cave_entrance.fos
- map_raiders_farmhome.fos
- map_raiders_south.fos
- map_random_cave.fos
- map_redding.fos
- map_redding_bank_vault.fos
- map_redding_lost.fos
- map_redding_mine.fos
- map_sad.fos
- map_se_door.fos
- map_se_howitzer.fos
- map_se_secret_shelter.fos
- map_sf_bos.fos
- map_sf_china.fos
- map_sf_shi.fos
- map_sf_tanker.fos
- map_slaverun.fos
- map_starter.fos
- map_talchem.fos
- map_vault13.fos
- map_vault15.fos
- map_vcity.fos
- map_vcity_bank_vault.fos
- map_vcity_hq.fos
- arena_generator.fos
- Scripts related to different areas, maps, including some logic or setup other than one init.
- map_se_door.fos
- map_se_howitzer.fos
- map_se_secret_shelter.fos
- map_greet.fos
- Special encounter map scripts.
- map_greet.fos
- Greeting scripts of maps.
- map_tent_h.fos
- map_tent.fos
- map_trainyard.fos
- Map script for all trainyards.
- mapdata_h.fos
- Header to include in any script using Map::GetData or Map::SetData.
-
4. AI:
- Generic AI:
- all_brahmin.fos
- all_brahmin_herdsman.fos
- Brahmin script, movement, frequency of the shit production, etc.
- Brahmin herdsman script, not used or mostly empty.
- all_farmer.fos
- Scripts for "farmers" or "homesteaders".
- generic_guard.fos
- Scripts for generic guards, having no special duty, but belonging to a faction.
- guard_h.fos
- guard.fos
- Guard behaviour related scripts.
- Specific AI:
- cathedral.fos
- Script for cathedral guards. (Unity faction)
- bos_lh_guard.fos
- Scripts for Brotherhood of Steel guards. (Brotherhood of Steel faction)
- den_metzger_guard.fos
- Scripts for Metzger guards. (Slaver? faction)
- hub_guard.fos
- junktown_guard.fos
- Scripts for Junktown guards.
- la_ady_guard.fos
-
5. Quests:
- golden_globes.fos
- Mostly dialogue related scripts, related to the Golden Globe. (Not sure if it is used at all, some kind of pornography quest/misc/whatever)
- junktown_skumpitt.fos
-
6. Crafting:
- blueprints.fos
- Creating, randomizing blueprints.
- fix_boy.fos
- fixboy_h.fos
- fixboy.fos
- Crafting related scripts.
- item_blueprint.fos
- Blueprints related scripts.
-
7. Inner logic:
- buffer.fos
- buffer_h.fos
- buffer_lazy.fos
- buffer_lazy_h.fos
- Internal buffer structures.
- cfg_file.fos
- Scripts to read configuration files.
- chosen_actions_h.fos
- chosen_tabs.fos
- Something to do with player interface/actions? Definitely inner logic.
- config.fos
- config_h.fos
- config_file.fos
- config_file_h.fos
- Configuration of server, some of the client?, config file scripts, etc.
- counters.fos
- counters_h.fos
- Configuration of server, some of the client?, config file scripts, etc.
- crippling.fos
- The script for periodic crippling and damaging of npcs in towns. No clue what this is, or why, where is needed.
- critical_failures.fos
- critical_table.fos
- Critical failures and critical table list, only edit with a specific tool: CritableEditor
- critter_age.fos
- critter_age_h.fos
- critter_description.fos
- critter_item_movement.fos
- Related to critter data, some functions about aging, description related to stats and script regarding critter item usage/swap, etc.
- debug_h.fos
- debug.fos
- Debugging related, mostly log writing.
- entire.fos
- A few helper functions related to entires.
- event_utils.fos
- Some helper functions for events through dialogues.
- groups_h.fos
- Faction definnes, reputation gain and limits defines.
- hexShot.fos
- hexThrow.fos
- Reloaded version 2.
- Hex shoot with Rocket launcher, grenate launcher and throwing grenades on hexes.
- ini_parser.fos
- A few scripts to read ini files.
- item_achievemntbook.fos
- item_attributes.fos
- item_bag_containers.fos
- item_bonus.fos
- item_brahmin_dung.fos
- item_dogtags_h.fos
- item_dogtags.fos
- item_dynamic_h.fos
- item_dynamic.fos
- item_flare.fos
- item_holodisk.fos
- item_lock.fos
- item_mapdoor.fos
- item_misc_h.fos
- item_misc.fos
- item_perks_h.fos
- item_perks.fos
- item_radio.fos
- item_skills.fos
- item_spawner_container.fos
- item_stealth.fos
- item_tent.fos
- item_pid_h.fos
- item_pid.fos
- Item related scripts.
- Blueprints in crafting related section.
- lexems_h.fos
- lexems.fos
- Lexems related script. (Dialogue logic).
- linetracer_h.fos
- linetracer.fos
- Utilities for tracing, pathfinding/critter-gathering functions.
- logging_h.fos
- logging.fos
- logging_critter.fos
- Utilities for tracing, pathfinding/critter-gathering functions.
- main_planes.fos
- main.fos
- Most important and basic stuff handled here, like skills, using items, etc.
-
8. Client specific:
- client_access.fos
- client_access_h.fos
- Client access level (User, Admin, etc?).
- client_anti_cheat.fos
- client_anti_cheat_h.fos
- Client anti cheat mechanic. Logic specific, values set sound like too high to work anyways.
- client_broadcast.fos
- Client broadcasting, receiving Town Control broadcasts.
- client_combat.fos
- Client combat, partial ofc, most of logic is in server combat script.
- client_cotainer_volume.fos
- Client container volume scripts.
- client_cutscene.fos
- Can disable keyboard, mouse and hide cursor for cutscenes.
- "Never even started to have any functionality" - Wipe.
- client_dev_menu.fos
- client_gmtools.fos
- client_gmtools_chat.fos
- client_gmtools_macro.fos
- client_gmtools_menu.fos
- Developer menu (check GM tutorial how to access it in game).
- client_followers_menu.fos
- client_fov.fos
- Field of view, calculation of sight, drawing of fog, etc.
- client_gui.fos
- client_gui_barter.fos
- client_gui_elevator.fos
- client_gui_ex.fos
- client_gui_h.fos
- client_gui_regwindow_ex.fos
- All the GUI elements, like character creation, trade window, etc.
- client_interface_h.fos
- client_interface.fos
- Uhm, some kind of interface, I guess used by the other gui scripts.
- client_io.fos
- Keyboard and mouse handling.
- client_keybinds_h.fos
- client_keybinds.fos
- client_main.fos
- Main client scripts, uses the other scripts.
- client_mapper_animations.fos
- Lengthy switch case scripts for mapper, supposedly to do animations?
- client_messages.fos
- Scripts related to messages. Funny thing, there were some implementations to simulate if your char has low int and speak accordingly.
- client_online_stats.fos
- XFire (an online gamer chat like Steam) related online stat sharing? Not used I guess.
- client_recording.fos
- Record and playback game play? Not sure if it works, but probably not important either.
- client_screen_gameinfo_h.fos
- client_screen_picture.fos
- client_screens_h.fos
- client_screens.fos
- Aim target bodyparts screen?
- client_smart_cursor_h.fos
- client_smart_cursor.fos
- Smart cursor that detects if you have the available tool to harvest the specific material.
- client_spawn_npc.fos
- No clue what this is for.
- client_timeouts.fos
- Used for timeouts, like First Aid, Battle, custom timeouts, etc..
- client_utils_h.fos
- client_utils.fos
- Utility function for client, like colors, fonts, etc.
-
9 Misc:
- attach.fos
- Some utility functions, related to radiation.
- backend.fos
- backend_h.fos
- Logging related scripts, definitions.
- bank_vault.fos
- Not sure where this is used, if used at all.
- billboards.fos
- Script that links the dialogues to billboards in Hub, NCR and in Boneyard.
- books.fos
- Script related to reading skill books, like First Aid, Science, etc.
- bounties.fos
- bounty_poster.fos
- bounties_h.fos
- Scripts related to bounties on players.
- cheats.fos
- cheats_core_h.fos
- cheats_help.fos
- Scripts related to cheat, probably for GM mode, did not bother to explore.
- companions_h.fos
- companions.fos
- Scripts related to companions.
- dev_menu.fos
- devconnect.fos
- Developer connection, menu, commands.
- effects.fos
- Effects like screen shake Not sure if it is used in reloaded.
- foart.fos
- foart_2038.fos
- foart_addons.fos
- foart_client.fos
- foart_h.fos
- foart_mapper.fos
- foart_server.fos
- gm.fos
- gmtools.fos
- gmtools_csc.fos
- gmtools_h.fos
- Game Master tools related scripts.
- grave.fos
- Scripts related to opening graves.
-
10. Disabled/Unused:
- achievements.fos
- achievements_h.fos
- Achievements - I do not know what they are exactly, but they are not used, but only to disable achievements.
- Header - A few definitions, macros related to achievements.
- casino.fos
- Something related to casino, but short wired to default values.
- chess.fos
- chess_h.fos
- Chess, with critters as pieces on the board?
- duel.fos
- Script for dueling, can bet on duels. I guess the player is the fighter here, but this does not seem to be used.
- event_warzone.fos
- event_boss.fos
- event_boss_h.fos
- Some kind of terminal usage function leftover. No reference to it, ofc. Also some event boss, boss skills and some headers.
- floyd.fos
- Special critter Floyd, whoever he/she/it is.
- fo2077_client_screen_gameinfo.fos
- generator.fos
- Old code, basis for some quest, but the scripts have been moved to other file.