a modder's wishlist

Feedback on past, current, and future development.
Post Reply
rot0r
Posts: 4
Joined: 01 Aug 2013, 05:38

a modder's wishlist

Post by rot0r »

I'm no programmer and haven't closely followed the technical side of OMW's development, so forgive me for dumping this unorganised, uneducated list of suggestions here - it might well be many of these ideas are ridiculous... but they may also give some insight on what could really make MW modders tingle, so on the off-chance it inspires anything, here goes:


scripting:

MessageBox: vanilla's duration is based on the length of the message (ie short ones like, say, "shit" - testers, you know what I mean - will disappear in less than a second, whereas long sentences may hang on longer than wanted).
>how about an optional "time" argument in seconds?

Vanilla can only give skill-up rewards (eg. Blunt Weapon, Acrobatics... +1) through "SetSkill", the problem being with this function they don't contribute to the level-up count (if minor/major skills) nor to the potential attribute gains on level-up.
> an IncreaseSkill function (simulating the "level up" of skills eg.... as if through training or natural level-up

Functions denoting a "cast on use" of enchanted items and scrolls (ie allowing scripted scrolls/cast-on-use items)

Missing scripting functions for spell effects (Get... functions not available in vanilla)

"Command magic" script functions to force-control the PC's actions, as if they were an NPC (while maintaining 1st or 3rd person animations) - eg. similar to AITravel

Checking for items crafted by the player and their properties - eg. being able to recognise/remove an amount of crafted potions in the inventory, with effects X...

Functions that detect when the game is Saved or Loaded

Some way to test whether the game is running on OMW (as opposed to vanilla engine) from within a script?

A way to record and target specific references of the same ID (eg. when spawning two of the same creature Scamp, only console targeting allows you to distinguish Scamp0000XX and Scamp0000XX+1 - and even though the references are unique and in some cases you can predict the number, they can't be referred to in scripts)
> another application being "player" doubles.

A new "OnPickUp" function (for books especially, since activate =/= pickup)



(More on the engine & CS side: )

Letting light-type wearables (lanterns, torches...) carry enchantments,

Custom marker types for scripts or intervention-type spells (easy Daedric intervention!)

Animation templates: using the "beast" animations template for creatures the same way the "biped" option can be checked for humanoids (golden saint, dremora). Almost-immediate application: beast skeletons.

Having an optional "displayed name" for cells which can be different from their default name (vanilla: cell names also serve as ID)
>Using text variables (%PCName, %...) in cell names

Context-based text variables (eg "%PCRace" returning "Dunmer" instead of "Dark elf" if the speaking NPC is one)

Filters editing the dialogue they're called on before it's displayed:
> for text variables (%PCRace,%PCClass... adapting the preceding article if it's "a" or "an" according to the first letter - or through new variables %aPCRace, %aPCrank...)
> for language skills? (text could be replaced with gibberish to various levels if the language is un/poorly known)

Dialogue filters that check whether an item / one of a group of items ... is equipped (worn by the PC)

Logic conditions other than AND (eg. "OR") for dialogue filters.

A "murderable bounty-free" tag for NPCs (so you don't get reported for murder if you kill eg. a DB assassin who didn't get to attack the player first)

An optional state for doors that sets them to "open" by default?

An optional "commentary" slot in the CS for IDs (items, NPCs, books...), serving a similar function to comments in dialogue resultboxes.

Rotating an interior's Northmarker (from within the game)

Being able to switch between several player characters :mrgreen:
&/or force switch the player to a different inventory (ie a way to reversibly clear inventory/ make the PC unable to access items from their inventory without disabling menus and spells, and without losing track of the original inventory)
Chris
Posts: 1626
Joined: 04 Sep 2011, 08:33

Re: a modder's wishlist

Post by Chris »

rot0r wrote:Functions that detect when the game is Saved or Loaded
I'm strongly against anything like this. A save-load cycle is supposed to be completely invisible to the game (loading a save should put you in the exact state you were at when making the save), and there's no good reason for scripts to worry about saving and loading other than to troll, or work around engine bugs that should be fixed.
Some way to test whether the game is running on OMW (as opposed to vanilla engine) from within a script?
The way things like OBSE mods do this is by running a script that calls any non-vanilla function before setting a variable. The vanilla game will reach the unrecognized function and abort the script (leaving the variable alone), while OBSE would run the function and then set the variable. Other scripts could then just check the variable to test if it's running under vanilla or not.

Though, the problem is those scripts can't call any non-vanilla function, even if they're they're in a skipped if block, because of the way the vanilla script engine works. We obviously can't do anything about vanilla's script engine, which may limit its usefulness.
A way to record and target specific references of the same ID (eg. when spawning two of the same creature Scamp, only console targeting allows you to distinguish Scamp0000XX and Scamp0000XX+1
This is inherently not safe. You can't guarantee consecutive RefIDs because they could (should) be reused. e.g. say the game has Scamp000000 and Scamp000001. Scamp000000 gets deleted. Then when you spawn two scamps, they get Scamp000000 and Scamp000002. Scamp000000+1 would, obviously, give you the wrong ref.
A "murderable bounty-free" tag for NPCs (so you don't get reported for murder if you kill eg. a DB assassin who didn't get to attack the player first)
The way later games handle this is by being able to mark factions as "Evil". If an NPC doesn't belong to any non-"Evil" faction (that is, they don't belong to any faction, or all the factions they belong to are marked "Evil"), any crimes you commit against them are ignored (though they and their friends would still go alert and/or hostile, you just wouldn't be considered as having done anything wrong).
MisterMannperson
Posts: 5
Joined: 09 Oct 2014, 01:25

Re: a modder's wishlist

Post by MisterMannperson »

rot0r wrote:Being able to switch between several player characters :mrgreen:
&/or force switch the player to a different inventory (ie a way to reversibly clear inventory/ make the PC unable to access items from their inventory without disabling menus and spells, and without losing track of the original inventory)
Cool idea. Like having a sort of party thing where you can switch between followers. Like, say, you're a melee-oriented type but you have a mage follower that can buff the group?
You could also make a mod where you have to retrieve your corpse if you die, or maybe some FF8 kinda stuff where your character dreams he's someone else, and then meets that person as you built his stats/equipment later in the mod. Or how about posessing someone though some spell!

How about being able to hotkey orders for followers?

Some other cool stuff would be somewhere to implement fallout 3-style gore if we wanted, and some more stuff to change for the different ways to attack with a weapon, like thrusts having more range or something or a space for loading a different animation for an attack. Maybe somewhere set special critical hit effects too.
They'd all default to how Morrowind behaves normally, though, and just give modders some things to play with.
Post Reply