Other user's assetsAll the assets in this file belong to the author, or are from free-to-use modder's resources
Upload permissionYou are not allowed to upload this file to other sites under any circumstances
Modification permissionYou must get permission from me before you are allowed to modify my files to improve it
Conversion permissionYou are not allowed to convert this file to work on other games under any circumstances
Asset use permissionYou must get permission from me before you are allowed to use any of the assets in this file
Asset use permission in mods/files that are being soldYou are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
Asset use permission in mods/files that earn donation pointsYou are not allowed to earn Donation Points for your mods if they use my assets
Author notes
This author has not provided any additional notes regarding file permissions
File credits
This author has not credited anyone else in this file
Donation Points system
Please log in to find out whether this mod is receiving Donation Points
Changelogs
Version v2020-11-21
radish.modding.tools-v2020-11-21:
+ questgraph-editor: support for automatic extraction of custom quest function templates from scripts folder in project
+ questgraph-editor: (optional) snap to grid for block placement
~ questgraph-editor: silenced most of the placeholder todo warnings and added some validation of settings
~ questgraph-editor: store backups in dedicated backup subdirectory to prevent filling up definition dir with backup files
!Fix questgraph-editor: do not create zip if no yml files are found (first time save of new project)
+ quest encoder: support for optionally specifiying (suggested) level for a quest in the journal definition
+ quest encoder: auto generating questlevels csv (basename of quest journals now automatically prefixed with modid)
+ quest encoder: support for additional external rtti definitions to add new (script) classes or extend already supported native classes with additional attributes as defined in scripts
~ quest encoder: more deterministic encoding (e.g. order of generated strings)
!Fix quest encoder: always treat journal info ids as lowercase (reading now in sync with encoding)
!Fix quest encoder: suppport more than 64 components in an entity
!Fix quest encoder: take care of imports with different flags in the same file
!Fix quest encoder: change array:handle for detected structs to array:struct in custom rtti definitions automatically
+ scene encoder: support for shave, haircut and pay actions with (money) parameter in dialog choice sections
+ world encoder: encoding foliage as editable debug information in specialized layer entities
+ phoneme extractor: new gui option to force rename all files (update duration, textlines)
+ phoneme extractor: -force--rename commandline option to rename all files with id prefix to <id>[<duration>]<texthint>.<ext>
+ phoneme extractor: -log-missing-audio option to log missing audio files based on input strings csv
~ phoneme extractor: increased contrast of phoneme labels in phoneme blocks
!Fix phoneme extractor: escaping text from line to be used in filename
!Fix phoneme extractor: pad renamed file string id prefix with leading zeros
+ repo.quests: a subset of vanilla classes as custom external rtti definitions
+ repo.scenes: example repo templates for custom animation meta information
+ docs: updated info about dialog choice actions shave, haircut and pay (test_dialogscript_choice_action.yml)
radish.ingame.bundle-v2020-11-21:
+ foliageplanter-ui: interactive planting of foliage in new hubs
+ storyboardui: new asset effects mode (by nikich340) to preview and activate one template effect per asset per shot
+ storyboardui: support for faster/slower hotkeys for movement/rotation control in camera and placement mode (by nikich340) (same as in radishquest ui)
+ storyboardui: support for dialogset actor placement and camera presets based on vanilla scene definitions
+ storyboardui: dedicated camera settings mode with all camera settings envui-style editable
+ storyboardui: support for toggling between all rotation axis in placement mode (also pitch & roll)
+ storyboardui: support for referencing custom animations, mimics and pose idle animations via script functions
+ storyboardui: autolog of definitions every ~5 mins
+ storyboardui: spawn flag as marker for current scene origin whenever in placement mode (to show where dialogsets will be centered around)
+ storyboardui: use provided startup scenepoint in dumped scene description, too
+ storyboardui: support for gamepad camera/placement (by jato)
+ storyboardui: support of radishseeds-style autostartup via hotkey (default F7)
~ storyboardui: moved custom voicelines, templates, animation category to top of selection lists
~ storyboardui: increased of actor and item count to encoder supported values (10)
~ storyboardui: (BREAKING CHANGE) normalized asset selection hotkey to E (except placement mode because it would move actor directly)
~ storyboardui: (BREAKING CHANGE) toggling move/rotate button is now spacebar (same as in radishquest ui)
- storyboardui: (BREAKING CHANGE) removed camera settings hotkeys (use new camera settings mode instead)
- storyboardui: (BREAKING CHANGE) removed stepsize adjustment hotkeys for placement and camera settings (use faster/slower hotkeys & camera settings mode)
~ storyboardui: all errors are now colored red
!Fix storyboardui: invalid posenames
!Fix storyboardui: typo for camera default setting plane
+ radishquest-ui: support for specialized waterarea definitions to increase/decrease water level (by nikich340) (no in-game preview)
+ radishquest-ui: interactive time mode now accessible directly from community mode
+ radishquest-ui: support for gamepad camera/placement (by jato)
~ radishquest-ui: improved area visualization proxy (additional panel edges)
~ radishquest-ui: improved visibility of area borderpoint selector
~ radishquest-ui: newly created areas are now pentagon shaped
!Fix radishquest-ui: always scale area borderpoint selector according to area height
!Fix radishquest-ui: always hide borderpopint selector on leaving borderpoint movement state
!Fix radishquest-ui: prevent unintended unlocking of community editing flag
!Fix radishquest-ui: multiple hotkey help message issues/missing info (e.g. in community mode)
+ radishseeds: support for gamepad camera/placement (by jato)
!Fix radishseeds: include terrain height in heuristic to place the tracked position in front of camera
radish.tools.unpack.into.r4data-v2020-11-21:
+ additional debug info script classes for foliage editor editable foliage patches
new-project.template-v2020-11-21:
!Fix skip speech encoding if there are no strings for speech
!Fix foliage updates (e.g. adding new types) requires analyze to be run
Version v2020-06-22
radish.modding.tools-v2020-06-22:
+ hairworks encoder: support for apx encoding to redfur
+ hairworks encoder: support for overwriting apx fur parameters via additional yml definiton file (compatible to hairworks ui)
+ quest encoder: automatic generation of shadowmesh layer definitions from specially named static layer entities
+ quest encoder/layers: support for showing/hiding vanilla layer via alias layer (aliasname: levels\prolog_village\cemetery)
+ quest encoder/layers: support for key, removekey, enabled_by_fact, facton_unlock_attempt, facton_unlock_success settings in animatedcontainer preset
!BREAKING CHANGE quest encoder: layers: "key" setting in teleport preset is now defined as an item-reference type. to use (unchecked) vanilla item names a ~ prefix must be used. to use a reference to a radish item definition use <categoryname>/<itemname>
+ scene encoder: support for smooth blending of cams to gameplay camera
+ scene encoder: support for changing actor gamestate (drawing swords, etc.)
+ scene encoder: support for cinematic subtitles in gameplay scenes (always positions subtitles at the bottom prefixes with actors name)
+ scene encoder: support for alternative look-at (gameplay) event for actor templates not supporting normal look-at events (e.g. werewolf)
+ scene encoder dics: additional test examples for new events (gameplay cam blends, alternative look-ats, gamestates, ...)
+ world encoder: encoding of shadowmeshlayers
!Fix world encoder: potential fix for vanilla hub patching buf of lower lod tiles vanishing
+ patcher: patching normal meshes to shadowmeshes
+ repo.shadowmeshes: batch files for setup of repository of patched shadowmeshes
+ questgraph-editor: option to change width of block property panel
+ questgraph-editor: support for reading shadowmesh definitions/mesh-entity repository data
+ questgraph-editor: support for showing/hiding vanilla layer via alias layer (aliasname: levels\prolog_village\cemetery)
!Fix questgraph-editor: search for help file at location of executable
mod.radishquestui-v2020-06-22:
+ support for "shadows" static entity specialization (additional automatic generation of shadowmesh definitions)
+ smarter startup-camera: do not elevate cam upon radui maximizing when player is in an interior env
~ moved embedded debuginfo datastructures into radish seeds so that it can be reused in other mods, too
mod.radishhairworksui-v0.3:
+ ingame mod for adjusting hairworks parameters in realtime with a hairworks component centered camera
+ dumping of parameters as encode-able definitions with radish redfur encoder
+ support for changing textures, texturechannel and strandblendmode (textures must be available in-game)
+ hotkey triggered animated preview with animations that can be added in radhw_preview_animations.ws
radish.ingame.mods.bundle-v2020-06-22:
+ bundle containing all the radish ingame mods and dependencies (except REQUIRED bootstrap) for easier setup/update
radish.modHairworks-ExampleProject-v1.0:
+ yennefer hairworks example with more info included (HOWTO.Hairworks.txt). be aware that this only replaces *one* hairmesh for yennefer - but not all appearances do reference this mesh!
new-project.template-v2020-06-22:
+ additional runtime check for installed radish modkit extending scripts
+ settings.bat flag to generate release version without debug infos
+ support for shadowmesh generation
+ support for dedicated mod-post-cook and dlc-post-cook additional files
! "additional" folder is now deprecated (use "additional.dlc.post-cook" instead)
+ support for hairworks build options
+ support for texture importing build options
+ additional comment about escaping in directory names (DIR_W3 setting)
- removed occlusiondata generation (this is not included in wcc_lite) as it sometimes crashes the build process
- example modelid removed
!Fix: call prepare cooking before first run of wcc
!Fix: support for blanks in radish tools dir (DIR_ENCODER)
trial1.modHubTest.project.source-v0.1.3:
~ update to latest project template for easier startup with the trials
trial4.example.scenestarter-utility-v0.1.1:
!Fix script compilation error
sublime.radish.modding.tools.support-v0.3.2:
+ support for cam.blend.togame and actor.gamestate events
+ completion for gamestate event action and behavior ids
+ snippet for alternative version of look at events
+ support for texture import build options
+ support for hairworks build options
!Fix reworked highlighting of error and warnings in build output
misc:
+ 3dsmax-Yennefer-Hairworks-Project-v0.1: 3dsmax hairworks project used to create the hairworks apx for above radish.modHairworks-ExampleProject
+ 3dsmax-Ciri-UNFINISHED-Hairworks-Project-v0.1: 3dsmax hairworks project used to create an (UNFINISHED!) ciri hairworks apx contained in above radish.modHairworks-ExampleProject
+ Ciri.Female.FBX.models.adjusted.by.ScoutBr0: ciri/female fbx models with skeletons adjusted by @ScoutBr0 used as base for the grothmesh in the 3dsmax examples.
Version v2020-01-28
radish.modding.tools-v2020-01-28:
+ quest encoder: support for community phase spawn_hidden flag
+ quest encoder: support for community smartai decorator (wanderarea, wanderpath, dynamicWork)
+ quest encoder: support for additional community decorator: SetAttitude, SetImmortality, SetLevel, AddItems
+ quest encoder: support for react to rain community setting
+ quest encoder: allow referencing newly defined entity templates by id in community definitions
+ quest encoder: support for more actionpoint settings (ignore collisions, tags, etc)
~ quest encoder: significantly reduce the bloat of rtti definitions
- quest encoder: deprecate/ignore flag in community phase decorators setAppearance and addTags (doesn't seem to do anything)
!Fix quest encoder: more strict handling of checked tag layerentity references
!Fix quest encoder: static and interactive layer entities do not support checked-tag-names (only autogenerated ids)
!Fix quest encoder: always transform names of static and interactive layer entities to lowercase to match autogenerated reference tag
+ scene encoder docs: additional info about matching scene actors
!Fix scene encoder: respect case sensitivity in section_start names to extract inputName value
+ questgraph-editor: support for reading community definitions
mod.radishquestui-v2020-01-28:
+ general: auto logging of definitions after 10 min
~ general: editing bool settings now directly flips the value
~ general: decrease speed of "slow" toggle for camera movement and entity placement to allow more precise placement
+ communities: support for phase spawnHidden flag setting
+ communities: support for actor react to rain setting
+ communities: support for smartai phase decorator (wanderarea, wanderpath, dynamicwork)
- communities: disable writing definition yml stub as nothing there are no serializeable settings anyway
!Fix communities: parsing of spawntimes
!Fix communities: interactive cam deactives auto follow cam mode
+ layers: support for cloning layer entity
+ layers: support for ignore collisions in actionspoints. default is set to true for all ap names containing "sit" or "lie" or similar
+ layers: support for wanderpoints in waypoint mode
+ layers: support for waypoint and actionpoint sets (multiple equally named wp and ap)
+ layers: respect distance from actionpoint preview for actor entity while moving to allow more precise placement
~ layers: disable collisions for actor proxy while moving
!Fix layers: listids for additional valuelist csvs
!Fix layers: sorting runtime for many entities does not explode anymore
!Fix layers: update mappin proxy placement before readjusting size
!Fix layers: typo in key for additional asset templates
!Fix navmeshes: filter by set questid
new-project.template-v2020-01-28:
- default values for timeline generation
sublime.radish.modding.tools.support-v0.2:
+ syntax highlighting for community definitions
+ autocompletion + snippets for community definition files (if the type is set!)
Version v2019-09-04
radish.modding.tools-v2019-09-04:
+ scene encoder: support for generating scene debug timelines as ascii gfx
+ scene encoder: shortcut definition for defining NONE look at level
~ scene encoder: changed to deterministic ordering of scene elements
+ workerthreads setting for phoneme extraction start
~ additional folder is now considered root of the projects files, meaning the content is directly copied into dlc/dlc<modname> folder
- sublime build options now in dedicated sublime package
sublime.radish.modding.tools.support-v0.1:
+ syntax highlighting for debug scene timelines
+ autocompletion + snippets for scene definition files (if the type is set!)
~ sublime build options now contained in the package (->selectable as build system in sublime menu)
Version 2019-08-10
new-project.template-v2019-08-10:
!Fix quoted game directory in log messages (required for characters needing escaping)
!Fix string files concatenation inserts a new line between files (in case a file does not end with a new line)
Although only a smallish subset of all possible features is supported it *should* allow to create non-trivial, story-based quests - just don't expect clicky-pointy-done workflows.
Documentation is provided as a guided self-learning tutorial named "Trial of the radishes", see forum posts for more information.
Important These are not beginners modding tools. You should have an intermediate or advanced W3 modding knowledge.
These collection provides a variety of tools to create or modify different kinds of game content. Although one of the goals was to provide tools that reduce some modding pitfalls every tool does require some deeper knowledge to be usable: on its own and in the grand scheme of combining content into a quest mod.
All in-game tools and both graphical editors are managed in public sourcecode repositories. If you are interested in fixing bugs/adding new features see below for links to the repositories.
The following tools are/will be available:
in-game mods
Storyboard UI Interactive setting up of rough drafts for in-game scenes and saving as encode-able, textual representation
Environment Parameter UI Interactive setting up an environment definition and saving as encode-able, textual representation.
Radish Quest UI Interactive setting up of layers (actionpoints, triggerareas, ...) for quests or static layers and saving as encode-able, textual representation. Interactive testing of encoded community phases and layers. Interactive creation of navigation meshes for new hubs.
Radish Hairworks UI Interactive changing hairworks settings and saving as encode-able, textual representation of parameters for (new) apx files
Radish Foliage Planter UI Interactive planting of foliage (randomly or indivdually) and saving as encode-able, textual representation.
external graphical editors
Quest Graph Editor Setting up questgraphs in a graphical UI and saving as encode-able, textual representations.
Phoneme Extractor Extracting and correcting phoneme timings from audio for lipsync generation.
external command line tools
Scene encoder Encoding textual scene definitions (based on storyboard ui drafts) into ingame w2scene files.
Quest encoder Encoding textual quest definitions (quest phases, communities, layers, entities, etc.) into various binary w3 game files.
Env encoder Encoding textual environment definitions into w3 env files.
Hairworks encoder Encoding hairworks apx with (optional) textual hairworks parameter definitions into w3 redfur files.
Strings encoder Encoding of new strings into w3strings.
World and Foliage encoder Encoding of height-, color and texture maps into new hubs and textual foliage definitions into foliage files.
Speech tools Generating lipsync animations from phoneme timings and packing wem audio and lipsync into w3speech files.
Logfilter Utility to filter and/or watch logfiles (e.g. wcc lite log or the scriptlog) to reduce output to most relevant information (e.g. warnings, errors, specific log keywords).
In addition there is an example new-quest-project template as a generic setup of batch files and directories to quickly kickstart a build pipeline for a new quest project.
The tools, especially the quest and world encoder heavily rely on wcc_lite, which is capable of many things. In fact these encoders can be regarded in many cases as door openers - the heavy lifting is done in wcc_lite.
Thanks: @erxv: for testing, testing, testing, video hosting, contributions to ingame mods @Scoutbr0: for marker models in radish UI and testing and fixed ciri FBX model used for example hairworks @rfuzzo: work on the wcc gui @nikich340: for contributions to ingame mods @jato: for gamepad support @Sarcenzzz: for his original mod editor @all testers