Jump to content


Photo

NearInfinity


  • Please log in to reply
1165 replies to this topic

#901 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 20 January 2018 - 05:15 AM

I wouldn't use a save from 2.x in a 1.3 game installation. It might cause issues that are hard to track down.
 
Both NPC names/bio and stats like "Most powerful foe vanquished" are stored directly in the saved game. To update them, open NI and navigate to the save's BALDUR.GAM. Switch to the "Edit" tab if needed. The NPC data can be found in one of the "Party member" structures if they joined already, or in one of the "Non-party character" structures, otherwise. The "Most powerful foe vanquished" can be found directly in the member structure, somewhere further below. To update it, simply enter the new string reference value into the "StringRef" field and press "Update value". You can probably set it to -1 if you want to remove it completely.
 
NPC name and bio can be found in the embedded CRE structure. Open the "CRE resource" structure at the bottom of the member structure. Name and tooltip fields are at the top of the structure and can be changed the same way as the most powerful foe field. The bio is further down below, somewhere in the big "Sound: xxx" field block. It can be updated in the same manner as the character's name.

Btw, for saved games there is a more user-friendly editor available: EE Keeper

If you have trouble following the steps for NI, you could give that tool a try instead.



#902 -Gast-

-Gast-
  • Guest

Posted 20 January 2018 - 09:25 AM

Thank You!

 

I hope, I can follow your instructions. Might try both. I launched the V 1.3.2053 by accident and realized, that the installation order is alike, some components are off. But all strings, that are wrong in the V2.3, are fine there, except the most powerful foe fields. Those are fine in the V 2.3 game. No playing with V 1.3.2053, just looking. One out of seven NPC's, I can pick up, is fine, that is an other strange thing.

 

I used a WEIDU-beta. Now a new version is out. I will make a new setup and try again. 



#903 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 24 January 2018 - 02:31 PM

Hello Argent77,

I have noticed this thing about how NI handles the «location» field of an opcode 7 «set colour» and wanted to open a discussion if this is the best way to handle it.

- current selection of colour "locations", based on IESDP I guess, is severely limited against what engine actually provide. For example, there's only 3 options for weapon in NI (16, 20, 21) while in fact the engine could work with 7 colours from 16 to 22. I guess it's the same for other types of .bams, but I've only studied weapons so far
    - sub-issue to the above: to target the mask colour (location) that is not used by vanilla .bams one had to circumvent standard NI method of picking from the list by chosing "edit as number"
- current description of "locations" is based on the wrong presumption: technically it's not "16: Weapon head/blade/staff major", it's "16: grey mask colour of the .bam", and so on. True that vanilla follows certain convention to the extent, but even vanilla fails at it at times, let alone mod .bams (1PP in the first place, which often uses much more than 3 mask colours per avatar/paperdoll .bam)
- in the current implementation NI doesn't answer the simple question: what "location" should I target by opcode 7 if I want to set the colour of a teal mask colour, or a yellow one?

Perhaps it would be of more use to switch from current

16 Weapon head/blade/staff major
20 Weapon grip/staff minor
21 Weapon head/blade minor

to

16 Grey (Weapon, head/blade/staff major in vanilla)
17 Teal (Weapon, unused in vanilla)
18 Pink (Weapon, unused in vanilla)
19 Yellow (Weapon, unused in vanilla)
20 Red (Weapon, grip/staff minor in vanilla)
21 Blue (Weapon, head/blade minor in vanilla)
22 Green (Weapon, unused in vanilla)

This way you could have best of both worlds: keep old reference for those who doesn't care about .bam structure but only want to change blade colour, for example, while also help those who need to know how to target a part of a .bam having certain mask colour.


Edited by Creepin, 25 January 2018 - 12:22 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#904 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 25 January 2018 - 05:13 AM

I haven't looked too closely into how color coding is handled by the games yet, so any insight would help to improve the situation (although I'm currently trying to figure out the PST(EE) color coding, which is slightly different). I don't want to stuff too much information into the location names though, as it would most likely confuse the majority of users. It would be more appropriate to expand the color location descriptions in IESDP instead.

About the currently unlisted entries 17-19 and 22 (and possibly others), do you know if there are instances where these locations are actually used? In that case I could add them to the preset list as well.

Currently NI defines the following color locations:

m_colorloc.put(0L, "Belt/Amulet");
m_colorloc.put(1L, "Minor color");
m_colorloc.put(2L, "Major color");
m_colorloc.put(3L, "Skin color");
m_colorloc.put(4L, "Strap/Leather");
m_colorloc.put(5L, "Armor/Trimming");
m_colorloc.put(6L, "Hair");
m_colorloc.put(16L, "Weapon head/blade/staff major");
m_colorloc.put(20L, "Weapon grip/staff minor");
m_colorloc.put(21L, "Weapon head/blade minor");
m_colorloc.put(32L, "Shield hub");
m_colorloc.put(33L, "Shield interior");
m_colorloc.put(34L, "Shield panel");
m_colorloc.put(35L, "Helm");
m_colorloc.put(36L, "Shield grip");
m_colorloc.put(37L, "Shield body/trim");
m_colorloc.put(48L, "Helm wings");
m_colorloc.put(49L, "Helm detail");
m_colorloc.put(50L, "Helm plume");
m_colorloc.put(52L, "Helm face");
m_colorloc.put(53L, "Helm exterior");
m_colorloc.put(255L, "Character color");


#905 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 25 January 2018 - 05:29 AM

If it might help, here is a macro stolen from 1PP to recolor new or modified items:

 

DEFINE_ACTION_MACRO ~GW_ITEM_COLOR_LOCATIONS~ BEGIN
// for weapons
    OUTER_SET wgrey = 16    // Quillons or Crossguard
    OUTER_SET wteal = 17    // STAFF : under the head and in the bottom and the middle of the staff
    OUTER_SET wpink = 18    //
    OUTER_SET wyellow = 19  //
    OUTER_SET wred = 20     // Grip (usually not visible as it's in the characters hand)
    OUTER_SET wblue = 21    // Blade or major portion of weapon
    OUTER_SET wgreen = 22   //  

// for helmets
    OUTER_SET hgrey = 48    // Helm ornamentation - i.e. wings
    OUTER_SET hteal = 49    // Helm ornamentation - i.e. feathers/horsehair according to the helmet type
    OUTER_SET hpink = 50    // Helm ornamentation - i.e. feathers/horsehair according to the helmet type
    OUTER_SET hyellow = 51  //
    OUTER_SET hred = 52     // Helm face
    OUTER_SET hblue = 53    // Helm - the main covering
    OUTER_SET hgreen = 54   //
// for shields
    OUTER_SET sgrey = 32    // Shield hub
    OUTER_SET steal = 33    // Shield interior
    OUTER_SET spink = 34    // Shield panelling - Helmet misc
    OUTER_SET syellow = 35  //
    OUTER_SET sred = 36     //
    OUTER_SET sblue = 37    // Shield rim
    OUTER_SET sgreen = 38   //
// for armour
    OUTER_SET agrey = 0     // Belt Buckle (on armour) or amulets (on robes) - entire body for some animations
    OUTER_SET ateal = 1     // Minor colour
    OUTER_SET apink = 2     // Major colour
    OUTER_SET ayellow = 3   // Skin colour
    OUTER_SET ared = 4      // Strap colour (on armour) or minor trimming (on robes - the centre strip down a robe and the hem on some robes)
    OUTER_SET ablue = 5     // Armor colour (and major trimming on robe - cross trim and cape trim on robe of archmagi)
    OUTER_SET agreen = 6    // Hair colour

END    // of DEFINE_ACTION_MACRO

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#906 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 25 January 2018 - 06:47 AM

Thanks, that's helpful. Looks like some of these numbers are also used by items in SoD.



#907 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 25 January 2018 - 07:49 AM

If it might help, here is a macro stolen from 1PP to recolor new or modified items
Great list, thanks for that quote!
 
Thanks, that's helpful. Looks like some of these numbers are also used by items in SoD.
These numbers are also used by 1PP, Erephine has lot of 4-colour paperdoll .bams and at least some avatar .bams.
 
I hope you will implement all numbers that can be used, not only those that are used so far. It's not a list of what were used after all, it's a list of what could be used :)

Edited by Creepin, 25 January 2018 - 07:53 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#908 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 25 January 2018 - 08:25 AM

I've scanned all my archived game installations with a custom WeiDU script for unknown color locations and found these types:
EE games: 17, 18, 19
An old BGT mega-mod installation: 17, 18, 19, 40, 51

Location 40 is not mentioned in the code snippet above. I've found it in DDCYRIC1.ITM, DDCYRIC2.ITM DDMANPEA.ITM, DDMANSH2.ITM and DDMANSHA.ITM which looks like stuff from TDD.

Is there some info available for the remaining uncommented values in the macro code above where they are/could be used?
 



#909 Roxanne

Roxanne

    Modder

  • Member
  • 3564 posts

Posted 25 January 2018 - 08:42 AM

I've scanned all my archived game installations with a custom WeiDU script for unknown color locations and found these types:
EE games: 17, 18, 19
An old BGT mega-mod installation: 17, 18, 19, 40, 51

Location 40 is not mentioned in the code snippet above. I've found it in DDCYRIC1.ITM, DDCYRIC2.ITM DDMANPEA.ITM, DDMANSH2.ITM and DDMANSHA.ITM which looks like stuff from TDD.

Is there some info available for the remaining uncommented values in the macro code above where they are/could be used?
 

For information, the DD.... items are weapons of enemies in TDD. They are not dropped when the cre dies, so normally you never see them.


The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*

 


#910 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 25 January 2018 - 09:39 AM

Is there some info available for the remaining uncommented values in the macro code above where they are/could be used?

May be it's some kind of miscommunication but... doesn't the macro Gwendolyne posted already has labels regarding where each value could be used: there's 7 values that could be used in weapon (16-22), 7 values that could be used in helmets (48-54) and so on.

Or have you meant to ask which value goes to hilt and which goes to blade - if so, it doesn't matter outside of vanilla vague colouring convention, I could draw a .bam with yellow grip, pink hilt and teal blade for mask colours, it will work fine provided I assign values correctly (this is where NI help would come handy) and take care to synchronize mask colours used in paperdoll and in avatar.


BTW why do you draw a line between which of the possible values has been used so far and which hasn't been yet? I see this factor as totally irrelevant, am I missing something important?


Edited by Creepin, 25 January 2018 - 09:51 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#911 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 25 January 2018 - 09:57 AM

I'm not drawing any lines. But I'd prefer to use labels that are more descriptive than "Weapon location 1" or "Helmet location 2". As you already noted, several entries in the macro code snippet don't contain useful descriptions.



#912 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 25 January 2018 - 10:24 AM

Many years ago, I built a spreadsheet from paperdolls to identify each slot of coloring. The macro uses them (in fact, those I needed)/

 

It is written in French, but if you think it is helpful, I can translate it.

Attached Files


Edited by Gwendolyne, 25 January 2018 - 10:26 AM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#913 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 25 January 2018 - 10:52 AM

I'd prefer to use labels that are more descriptive than "Weapon location 1" or "Helmet location 2". As you already noted, several entries in the macro code snippet don't contain useful descriptions.

Finally I understand! I'll try to explain what I figured so far:
 
Indeed game developers had some agreement apparently, so vanilla .bams tend to generally use red for grips, grey for shafts and blue for blades (I am talking in weapon terms here because these are the only ones I have dealt with so far, but I'm sure the rest apply as well). This has 2 consequences: firstly, this means that technically ANY of the allowed values/mask colours could be used for grip, shaft and so on, and secondly, when modders use 4th or 5th mask colour in their .bam, they have no convention to rely on so they will inevitably use different colours for similar item parts.

 

A live example: when needed 4th colour for the paperdoll in addition to 16, 20 & 21, I chose 17 with no apparent reason to do so, it could have been 18, or 19, or anything. Next, in my case it was for halberd tassel, but it could have very well been for runic ornament, or grip second colour, or back blade, virtually anything. There's no way one could give a meaningful description covering all that. Note that I didn't even have a real reason to use 16, 20 or 21 at all, I was just too lazy to bother with avatar recolouring otherwise :)

 

This is why I believe NI in its list of options for opcode #7's location field should present solid data of value/item type/colour and only optionally, if at all, a guideline to vanilla convention.
Like this:

Spoiler

or, alternatively, if you feel like coding some fancy whistle, you could get rid of convention guideline whatsoever but make a "display bam" button (drawing data from "equipped appearance" field) next to already present "update value" button so that anyone could check with a single click which colour he need to target.


Edited by Creepin, 26 January 2018 - 01:02 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#914 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 05 February 2018 - 11:44 AM

Update: NearInfinity v2.1-20180205

Changes:

  • Added option to create zip archives of saved games to the context menu. (Right-click on save folder or related save file in resource tree.)
  • Added option to toggle visibility of icon labels in WMP view tab.
  • Added option to export WMP map as PNG, including selected overlays.
  • Added PST/PSTEE-specific CRE color support.
  • Improved list of color location descriptions, used by opcodes 7, 8, 9, 50, 51, 52 and 61, to be more modder-friendly.
  • Unhardcoded color field labels for CRE resources in PSTEE.
  • Show symbolic names in color fields (found in CRE, PRO and opcode 7) when available.
  • Tools > Check for unused files: Added BAM to list of resource types.
  • Updated opcode 32 (Raise Dead).
  • Updated PRO behavior flags.
  • Fixed ground icon not always being displayed in ITM view tab.
  • Fixed not setting correct compression type for Tools > Convert Image to MOS (V2).
  • Fixed a bug in the script decompiler for actions with multiple signatures, that differ only in the number of string parameters.


#915 Roxanne

Roxanne

    Modder

  • Member
  • 3564 posts

Posted 05 February 2018 - 11:59 AM

Thank you!

 

The zip creation for save games is fantastic. I do a lot of repairs for people who have bugs in their saves and this function really makes life easier. Great idea.

 

(Question, does it require the user to have some zip function installed on


The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*

 


#916 Argent77

Argent77
  • Administrator
  • 1418 posts

Posted 05 February 2018 - 12:00 PM

Thank you!

 

The zip creation for save games is fantastic. I do a lot of repairs for people who have bugs in their saves and this function really makes life easier. Great idea.

 

(Question, does it require the user to have some zip function installed on

No. Zip functionality is already provided by the Java Runtime.


Edited by Argent77, 05 February 2018 - 12:01 PM.


#917 Roxanne

Roxanne

    Modder

  • Member
  • 3564 posts

Posted 05 February 2018 - 12:04 PM

Thank you!

 

The zip creation for save games is fantastic. I do a lot of repairs for people who have bugs in their saves and this function really makes life easier. Great idea.

 

(Question, does it require the user to have some zip function installed on

No. Zip functionality is already provided by the Java Runtime.

Brilliant - makes the instruction of *how do I upload a saved game in EE* much easier, at least if you have NI.


Edited by Roxanne, 05 February 2018 - 12:04 PM.

The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*

 


#918 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 06 February 2018 - 12:59 AM

Improved list of color location descriptions, used by opcodes 7, 8, 9, 50, 51, 52 and 61, to be more modder-friendly.
Just checked new implementation, and wow does it look cool! Thank you Argent77 :)

Edited by Creepin, 06 February 2018 - 12:59 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#919 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 26 April 2018 - 05:13 AM

It bug me for a long time that there's different names of fields for effects in NearInfinity and IESDP. In most cases I was able to draw a correlation by a guesswork, however his time I stuck.

So, # 22 Luck. IESDP says following:

#22 (0x16) Stat: Cumulative Luck Bonus
Parameter #1: Statistic Modifier
Parameter #2: Type

continuing with explanation of parameters.

IESDP on the other hand has fields like "target", "power", "value" and so on, the usual. Let's say I want to put 1 in Parameter #1 and 0 in Parameter #2, which fields in NI should I use? Or, better yet, how in general I could figure out on my own which fields should I use?


Edited by Creepin, 26 April 2018 - 05:14 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#920 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 26 April 2018 - 06:08 AM

If it is a EFF v1 : parameter is 0x4 after opcode field, and parameter 2 0x8.

If it is a EFf v2 : parameter 1 is 0x1c after signature, and parameter2 0x20. In fact : opcode, target, power, parameter1 (whatever the name used in NI), parameter2...


CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.