e-mods.net

Modifications => Nod SDK Mods => Wodal Mod => Topic started by: Javokis on 2007-07-28, 09:55:59

Title: Plans for Next Release
Post by: Javokis on 2007-07-28, 09:55:59
Here's a list of things that will done for next release (0.2a):

-Include Complete Documentation
-Add [inworld] command then deprecate the [targetexists] command (inworld will be better)
-Fixed the iterate command and allow it to iterate through storage
-Add another param to the [compare] check command to allow either numbers or text to be compared
-Add a [loop] command
-Change the concatenation code to be more flexible (all scripts containing concatenation code will need to be changed)
-Add a tracepath option to the Flight command (allows flight of great distances on or off roofs and still be able to walk)
-Move all error messages to an easier to read log file
-Include more examples to showcase ALL COMMANDS AVAILABLE
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-28, 10:23:38
Lol and I just thought of releasing the Lure of Flame discipline , but looks like im going to have to heavily modify it once the new release is out because it has alot of <>, [compare] and [targetexists] in it. 

Hmm maybe describing the intended syntax changes in detail(the ones that are to be replaced/updated)will allow me to write the rest ahead instead of halting development altogther.

Does the Log file means I wont be able to view the errors in game? it can be kind of confusing (being unable to tell at what part it outputs error+ I cant Alt+Tab out of the game)
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-28, 13:37:10
I may just deprecate the old concatenation syntax.

Does the Log file means I wont be able to view the errors in game? it can be kind of confusing (being unable to tell at what part it outputs error+ I cant Alt+Tab out of the game)

There will be options you can enable/disable to view wodal bugs in-game, mostly in the form of a command you input into your scripts.

Be adviced that this is still an early stage language and may not be recognizable by the time it goes beta. I have plans to remove as much syntax as possible given my knowledge. Eventually, scripts may start looking like this:

{fire: target, proj_fireball, 50, fire}
{console: caster, "<name.caster> throws a fireball!", ff0000}

Which I think looks cooler than what Wodal currently looks like. So you might want to consider that in later releases. Most of what I'm doing now is experimentation, but I appreciate having testers around making sure the stuff works.

 
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-28, 16:07:59
The function appears to remain the same then . I kind of got used to the old syntax though, its very easy to understand for me either way if the structure interface of the commands and functions remain similar.

Correct me if im wrong but the only diffence is instead of a  [param] (param) (param) you do {param,param,param} ? Anyway ill just hold off on writing until there is a final syntax because otherwise its probably just going to be a pain to change it around all the time , I think ill focus more on modelling and testing then so no worries.

I will post what I did so far though, just need to stick all the powers in the appropriate define text and put some finish, it might be good for educational reasoning (I wrote what each part of the code does in commentary so its understandable)
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-28, 16:38:54
I will keep all of my older versions of the mod. So everyone can try the old stuff out and see what they like best. So no worries.

Edit: Well it's official. The new syntax will be a permanent part of Wodal. I'll be having edit the docuementation a bit along with the command reference guide among other things, but I'm very satisfied with the look. I think character files look more natural and because the WHOLE command is inside one set of { } I am considering allowing for more than one command per line with this more efficient system. That way a character sheet can look like so:

Code: [Select]
              ;---Physical                            Mental                            Social
                {strength: 4}                     {perception: 2}              {charisma: 1}
                {dexterity: 2}                    {intelligence: 3}              {manipulation: 2}
                {stamina: 2}                      {wits: 3}                        {appearance: 2}


Something like that. BTW: {charwriter} works better than ever and should support the new syntax.
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-29, 13:49:06
Whoa... I seem to be giving myself quite a chore by doing multi-command line reading. Now's a good time to start coding that logging system.
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-29, 19:55:23
Will it help WoDal to scan through the *.txt files faster?
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-29, 23:30:25
A little. I did notice some boost in speed reading the char files you made after I redid them into WoDal's new syntax.

I attached the changes to syntax to this post so to give you a head start on looking over it. I did remove some things, but go ahead and add them back in. The new logging system is fairly working though sometimes it doesn't log the CHAR Checker sometimes. Not too sure why,
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-30, 03:15:01
For Clarification

So on a line like:  {knowledge: occult, 5}

charcheck will work as so?
{charcheck: caster, store, randomname: knowledge , occult} ?

and refered to in the code afterwards like so?

<var.caster.randomname> ?

assuming randomname is just a name I choose for the created variable
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-30, 07:59:14
Yuppers.  ;)

Does that seem easier to do or harder to do in the new syntax?

Now that <casterstore_> is gone, you'll have to use <var>, but here's the up side:

<var.can be any target keyword or storage target address.randomname>

You couldn't check a stored object with the old system. Now you can. Same works with <stat>. The new system is a lot more flexible I think and should allow you to accomplish even more. When I start implementing chronicle script capabilities in later releases I WILL NEED VARIABLES so to store a quest or conversation flag or some such, but hopefully WoDal will make chronicle scripting easier.
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-30, 09:33:38
Yuppers.  ;)

Does that seem easier to do or harder to do in the new syntax?

Its easier for me because its less typing I think, you might want to ask people who are totally new to coding though.

Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-30, 11:00:27
Oh well. At the very least, programmers can skip the step of compiling a script and just have a saved .txt file instead - faster mod development, simplicity, and less code typing are what goals WoDal attempts to achieve.

On the other hand, the only way to really be simple is to make a WoDal program that writes scripts for you. I've always had thoughts about making one, but that will be far in the future.
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-30, 13:35:54
my thoughts are not towards simple, but more like user friendly that people find easy to learn.
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-31, 00:00:29
OMG. LOL. Check this out:

[video removed]

Here's the script for it:

Code: [Select]
{event: cast}
{iterate: props, prop}
{flight: props, target, proj_grenade, 100, fire}
{enditerate}
{endevent}

Hehehehe. The iterator is working now. ;)
Title: Re: Plans for Next Release
Post by: ORI on 2007-07-31, 09:41:27
Hmm looks good
Title: Re: Plans for Next Release
Post by: Javokis on 2007-07-31, 22:57:07
I have also done considerable improvements to charwriter.

Charwriter will not only support the new multi set line, it will no longer remove your comments and bastardize your file when it edits the specified values. The old charwriter was very intrusive and would pretty much undo any hard work you put into making your char file to look pretty. Well now it'll modify IN PLACE, changing only what has to be changed while leaving everything else untouched. :D

I also finished the new loop command. I'll document it later, but I have tested it out on a few things and noticed it supported loops within with iterators and iteraters within loops. I'll have to do more testing though to make sure it's a flexible loop command.
Title: Re: Plans for Next Release
Post by: ORI on 2007-08-01, 11:56:27
So the new syntax is pretty much the {} thing and '.' instead of '_'  and the 'Var.X' thing instead of '<X>' ?
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-02, 10:56:09
I have decided not to go with an off/on switch for debugging. Nor do I want debug messages in console anymore. All debug messages are stored in log files now. The reason is that there is just so much being tracked you wont be able to see everything in console sense console has a limited length and is very narrow. The only time something pops up in console is when a java exception error has occured and all scripts have stopped because of it, but even then the console will tell you to refer to the log files. I want console to be used ONLY for what the user uses it for along with important messages because to do otherwise would make console rather useless sense {console} command messages would constantly be marred over by ugly debug messages.

It would make even myself dizzy. The log files are just more sanitary.

As for the syntax, the concatenators are still within <>. Well, more complete documentation will be included this second time around, including what concatenation keywords are available.
Title: Re: Plans for Next Release
Post by: ORI on 2007-08-02, 19:29:13
Its a shitty deal for people who cant Alt-Tab .. I wont be able to tell at what point did I get an error or how or if I got a error at all because I can only look at the log file after I quit the program
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-02, 20:46:36
There are two kinds of debug messages - the ones related to your code and the ones related to Wodal.

You wouldn't be able to tell at what point the problem occured IN console for problems related to Wodal.

The log files for Wodal debugging take up an average of 70-700kb depending on the size and complexity of your script. It wont fit in console. Console is limited to maybe 50 lines of text - a log file creates 1000's of lines of text showing all aspects of Wodal's file reading instructions and command events. When an error occurs in Wodal, you wont be able to solve the problem by looking at it in console anyway.

Of course errors related to your script (not wodal) will be shown, but I'm not seeing what you're getting at with the alt-tab thing. Would you not have to exit the game anyway if a script is not working?
Title: Re: Plans for Next Release
Post by: ORI on 2007-08-04, 09:17:32
yes but that means exiting for every single action I try to see if there is error instead of just minimizing to check the log or otherwise seeing it in console
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-04, 23:35:17
That's an academic assessment there. The objective of these alpha's are to determine how much more or less work will go into development for them. If it's more work then revisions will be made, but the way I have things setup are more satisfying for me.

[edit]

This new version should be ready by Friday. I'll have a lot more content in version 0.2a. The next Wodal will contain four various oddball demo groups, more common vampire powers, and a PnP equivalent Protean discipline group. Oh and with this new release, you no longer have to name your character 'Test' anymore. Wodal v0.2a will now look for a Global file for character sheet info and AI if it can't find one matching the name of the file it normally looks for. You can now make a character normally and test Wodal's features from the get-go.

Everyone will start out with the Vampire common powers, the four demos, and pnp Protean in the Global.txt files. This should relieve ST's of having to do a lot of work by setting base rules for everyone and everything.
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-05, 16:04:49
Ok I did quite a bit of client testing over my network and have come to realize that Wodal had some serious issues to debug. Mainly in the form of client crashing and things not looking right. Well most of that is fixed and Wodal is now stablized - should be client compatible now. I also did some adjustments to the Flight command, which should allow clients to fly around fairly well. At least it has gone from useless crap to relatively practical. Originally, clients would not be able to control their flights well - they would magically appear someplace wrong or others would not be able to see where they are after flying. This still somewhat occurs, but can at least be more managable and easily corrected.
Title: Re: Plans for Next Release
Post by: Skyra to Hollow on 2007-08-05, 22:47:07
I watched that iteration test clip and my first thought was "holy shit, Movement of the Mind is actually possible now!"  Great work, Jav.  I look forward to v0.2  8)
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-07, 09:50:45
Thanks.

I have spent a lot more time on debugging the damageoverride command than expected, but should be well worth the effort in the long run. I have allowed for the creation of global combat rules within Wodal and as a test decided to code a sample of how Wodal can override combat damage calculations by implimenting some basic PnP rules into damage as follows:

Currently, all damage is calculated by attacker's strength stat, randomized by the rolldice command. The defender soaks the damage with their stamina, but only under the correct conditions like:

-Vampires take half damage from normal then soak the remaining damage
-Vampires (not humans) soak lethal damage with stamina
-Humans take lethal damage from normal bullet projectiles
-Humans cannot soak lethal with stamina

All soak is randomized by the rolldice command based on damaged individual's stamina. To hit calculations are currently done by the normal game engine and therefor not factored into the code for stability and sanity purposes. Testing this system has proven to show that even at 7 health the game is more survivable than with 100 health. I have also done the following to combat:

-Vampires who take aggravated damage recieve an X icon for each point of aggravated recieved.

The X's are dumby effects referenced by BloodHealing to check for aggravated damage points. Bloodhealing has been scripted to do the following:

-Vampires attempting to heal 1 point of aggravated damage in combat must spend 2 willpower and 7 blood points
-Vampires attempting to heal 1 point of aggravated damage under relaxed conditions spend 1 willpower and 5 blood points
-Vampires that attempt to heal non-aggravated damage in combat situations must spend 3 blood points per health level
-Vampires that attempt to heal non-aggravated damage in relaxed conditions spends only 1 blood point per health level

Like everything else in Wodal, you can code changes easily within the various text files containing the related script. The rules stated above are not hard coded within Wodal and are IN-FACT optional and can be disabled by going into the correct files and making adjustments.

In essence, Wodal doesn't even have to be about PnP. You can do whatever with it given the knowledge and imagination. At least that is the goal.
Title: Re: Plans for Next Release
Post by: Azraelthe7th on 2007-08-07, 11:48:20
I've said it before and I'll say it again: AWESOME!  Sorry I didn't have time to actually test the 0.1 alpha, but school's almost done so I'll likely be able to play around with the new version.
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-07, 12:54:43
You didn't miss much.  ;)

Come this Friday, things'll get interesting...
Title: Re: Plans for Next Release
Post by: Skyra to Hollow on 2007-08-07, 23:30:30
Jav, both you and ORI made Hamachi networks for the Wodal. Are they both still actively used for testing, or do you prefer to use one over the other?  Also, give us a heads up so we know when (what time) on Friday you plan to do a public test/demo.
Title: Re: Plans for Next Release
Post by: ORI on 2007-08-08, 06:42:46
Mine is left unused.
Title: Re: Plans for Next Release
Post by: Javokis on 2007-08-09, 21:57:36
Ok things are going well, but I did a bit more debugging than I expected. I'm currently trying to finish up the Common vampire powers as well as Protean - though I feel I may need to do a little rushing on it to make a Friday deadline. Everything else has been working quite well sense I started adding more content to the mod and tested that content on the network.

Common will have the following:

Bloodhealing - reworked for PnP rules.
Feed - a little treaky, but too late in the development to fix in 0.2a. Maybe fix it in 0.3a?
Diablerie - pain in my ass, but I got 'er working quite well though not fully PnP due to engine limitations, it should be good enough.
Ghoulism - working on it, but should allow for blood to be given to a human to make them an allied ghoul.
Embrace - plans to allow you to kill the subject first with feed then give your blood to their dead (or near dead) body to turn them.

Protean will have the following (hopefully):

Eyes of the Beast - toggle it off and on at no cost to create illumination. Currently has no pnp social factors.
Feral Claws - normal game effect at 1 bp
Earth Meld - I plan to take the E-Mod1.8 entombment effect for this one.
Shape of the Beast - normal game effect at 1bp
Mist Form - normal but with 1bp

Like I said - I need to rush them. I only finished the Eyes of the Beast discipline due to taking time to debug various random issues. Also note that pnp combat rules are enabled, but are limited to damage rules only and only some of the damage rules - not all. I haven't even factored in Potence and Fortitude yet - and wont at this rate.

After this 0.2a launch, I'll be concentrating on making Wodal work with Single Player to assure stability and perhaps give me an excuse to integrate a new AI system that can understand the new discipline rules. This should be fun in that I am quite curious what bugs I'll find in Single Player after I make proper character sheets for the SP casts.

NOTE: Because of Global, the game will lag for a short time when large levels filled with 20+ npcs(enemies) are loaded for the first time. Wodal does some major calculations through Global file reading on EVERYTHING though much of those calculations were cut down to assure that the lagging loadup isn't too long or inconvenient.

This means that I tested Wodal on both Leaves of Three and To Curse the Darkness chronicles. So far the tests have shown stability other than the added lag caused by first time Wodal level load up.