Oni Central Forum

A forum for the Oni community

You are not logged in.

#1 29/8/17 21:04

SomeGuy
Member
Registered: 29/8/17

Does anybody have a BSL syntax config file for N++?

Hey,
Trying to learn modding and the first steps to learn it as far as I know is trying to write BSL scripts. A proper syntax config would make it much easier though so if anyone has it and could share, it would be awesome. I would've got it from another forum post but all the links are dead there.

Last edited by SomeGuy (29/8/17 21:18)

Offline

#2 30/8/17 3:35

s10k
Member
From: Portugal
Registered: 14/1/07
Website

Re: Does anybody have a BSL syntax config file for N++?

Offline

#3 30/8/17 8:37

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

s10k wrote:

oni.bungie.org/forum/viewtopic.p … 664#p23664

Those are the dead links I was talking about, both of them give me 404.

Offline

#4 30/8/17 8:49

s10k
Member
From: Portugal
Registered: 14/1/07
Website

Re: Does anybody have a BSL syntax config file for N++?

Oh ok! I will fix these for you today, once I am able to.

Offline

#5 30/8/17 14:50

s10k
Member
From: Portugal
Registered: 14/1/07
Website

Re: Does anybody have a BSL syntax config file for N++?

I've fixed the links. Please try now.

Offline

#6 30/8/17 15:30

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

s10k wrote:

I've fixed the links. Please try now.

Thanks, I appreciate it.

Last edited by SomeGuy (30/8/17 15:32)

Offline

#7 31/8/17 11:35

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

Oh just one more thing, don't want to create a separate thread for it, what's up with BINA3RAP files having a "p" and "e" versions? Why do two versions exist and how are they different?

Offline

#8 1/9/17 13:07

s10k
Member
From: Portugal
Registered: 14/1/07
Website

Re: Does anybody have a BSL syntax config file for N++?

Sorry I don't know, I'm very new with particles modding. I think it's better to open a new topic in this forum section asking it.

Offline

#9 1/9/17 13:36

ltemplar
Member
From: Poland
Registered: 23/8/12

Re: Does anybody have a BSL syntax config file for N++?

Because P means particle(so object that will be visible in game)while E is "activator" (so point from where thus particles should start) of that particle to my knowledge.

Offline

#10 1/9/17 14:09

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

ltemplar wrote:

Because P means particle(so object that will be visible in game)while E is "activator" (so point from where thus particles should start) of that particle to my knowledge.

Ahh, you're right. Here's the URL of the comparison if anybody else needs it in the future: diffchecker.com/Rwtcsz7l (p01 file on the left, e01 on the right) . But why didn't they just use a single file? And why are there two different particles used in those two files? And if they wanted to separate emitter from the particle why bother with all those additional options in the emitter file? Maybe it's just how vago extracts so files? So many questions. There isn't anything in wiki mentioning this either, unless I am blind.

Last edited by SomeGuy (1/9/17 14:13)

Offline

#11 1/9/17 15:43

ltemplar
Member
From: Poland
Registered: 23/8/12

Re: Does anybody have a BSL syntax config file for N++?

Well oni is rather old game with absolute engine when compeered to today's standards. So you should blame the original creators not the community for thus names.Probably (but this is only speculation of mine) the use names to quickly travel trough files.. so that's why the needed short yet self-explanatory files names.
BTW. Here you have all binary data file names .Maybe this will be some help for You :http://wiki.oni2.net/Category:Oni_binary_data_docs

Ltemplar.

Offline

#12 1/9/17 16:00

paradox-01
Member
From: Germany
Registered: 14/1/07

Re: Does anybody have a BSL syntax config file for N++?

As templar said, naming convention to remember what a file does.

_e emitter
_p particle
_x expiration / explosion
_f fire
-------------
d_ decal
w_ weapon
h2h_ hand to hand
env_ environment
super_ daodan / daodan related

> But why didn't they just use a single file?

If i remember correctly a particle cannot spawn itself with copies. (Blame their structure.) So you always have two files in such scenario, minimum. The e as emitter with location/spawn rules, the p as with the actual appearance. They work in tandem. Watch out for links such as

<Emitters>
  <Emitter>
    <Class>env_rat_p01

There's only one file type for particles, but they can be very diverse. When you look at the binay (or "hex" form) of a particle it is stored with all its properties in - may they be relevant or not (certain flags can disable sections). Options, Properties, Appearance, Attractor tags always fully extracted to xml. So one difficulty is to learn what parts of the files are in actual use.

Offline

#13 1/9/17 16:27

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

Thanks for the help guys, cleared up most of the confusion.

paradox-01 wrote:

There's only one file type for particles, but they can be very diverse. When you look at the binay (or "hex" form) of a particle it is stored with all its properties in - may they be relevant or not (certain flags can disable sections). Options, Properties, Appearance, Attractor tags always fully extracted to xml. So one difficulty is to learn what parts of the files are in actual use.

Is there anything related to this in the wiki? As in a list of things each file uses or a written tutorial on how to recognise what is and isn't disabled in a file? I get that I could test it myself, but that would take a lot of time, I haven't even fully grasped vago and package structure for AE so some avoided complexity would be nice.

Last edited by SomeGuy (1/9/17 16:30)

Offline

#14 1/9/17 17:30

paradox-01
Member
From: Germany
Registered: 14/1/07

Re: Does anybody have a BSL syntax config file for N++?

To speed up testing you should use level plugins.
Batch (*.bat) file in GameDataFolder with an onisplit.exe and a folder with your xml files
This will bypass the AEI.

onisplit -create level0_A level0_A/*.xml
onisplit -import:pc level0_A level0_A.dat
cd ..\
start Oni -noswitch -debugfiles


I don't think there are many distinct sub types however we never really got around in documenting their condition (what flags make what tags active). Decals are probably the most distinct and easy ones to understand.
http://wiki.oni2.net/XML:BINA/PAR3#Step … A3RAP_file

Necessarily not all but few of the properties can be used to define sub types as some properties can be combined and others exclude each other (e.g. decal and lensflare).

<Properties>
            <HasVelocity>false</HasVelocity>
            <HasOrientation>false</HasOrientation>
            <HasPositionOffset>false</HasPositionOffset>
            <HasAttachmentMatrix>false</HasAttachmentMatrix>
            <HasUnknown>false</HasUnknown>
            <HasDecalState>true</HasDecalState>
            <HasTextureStartTick>false</HasTextureStartTick>
            <HasTextureTick>false</HasTextureTick>
            <HasDamageOwner>false</HasDamageOwner>
            <HasContrailData>false</HasContrailData>
            <HasLensFlareState>false</HasLensFlareState>
            <HasAttractor>false</HasAttractor>
            <HasCollisionCache>false</HasCollisionCache>
        </Properties>

I think those sub types are exist for sure:
- decal
- lensflare
- 3d object (instead of lensflare)
- contrails (white / colored, flat texture attached to attack TRAMs)
- damage dealer
- helper particle (anything with one of those: location, orientation, attractor, emitter, event, used as emitter or in between a chain)

Or maybe think of "typical particle families" instead of "sub types".

Last edited by paradox-01 (1/9/17 18:33)

Offline

#15 1/9/17 20:43

Scarlett
Member
From: Jamaica
Registered: 25/11/15

Re: Does anybody have a BSL syntax config file for N++?

I'm still new to particles as well and these are some pretty useful info. I knew some but not much smile

Offline

#16 2/9/17 4:16

paradox-01
Member
From: Germany
Registered: 14/1/07

Re: Does anybody have a BSL syntax config file for N++?

Here one more tip: when investigating particle you might want to draw their structure on paper or screen to better see what is going on.

Example:
http://wiki.oni2.net/XML_talk:BINA/PAR3 … r_particle

The mods probably want now to move these posts to a new thread. Dunno, "Particle questions"?

Offline

#17 2/9/17 6:56

SomeGuy
Member
Registered: 29/8/17

Re: Does anybody have a BSL syntax config file for N++?

paradox-01 wrote:

To speed up testing you should use level plugins.
Batch (*.bat) file in GameDataFolder with an onisplit.exe and a folder with your xml files
This will bypass the AEI.

onisplit -create level0_A level0_A/*.xml
onisplit -import:pc level0_A level0_A.dat
cd ..\
start Oni -noswitch -debugfiles

If I am being honest I want to avoid command line tools for now, it would be very easy for me to screw up something this way, even though it is faster when you get hang of it. I am going to create a separate thread since this one got a bit off track.

Last edited by SomeGuy (2/9/17 7:19)

Offline

Board footer

Powered by FluxBB