Page 133 of 145

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Tue Jun 11, 2019 5:57 am
by youngneil1
I might try to do prop moves (pathfinding, idle moves, all animations, bark strinngs) for nearby neighbouring maps, too:

1. The pathfinding would only be done within the constraints of each separate map, so props will not cross these invisible lines (exception: time driven movers).

2. All mover props on current map will be caculated. Also, all props on neighbouring are calculated as long as their y-distance is 8 or less and their x distance is 13 or less to current party position. This way eg with the 32x32 default map size only 4 maps will be affected at max (corner situation: current plus 3 neighbours).

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Tue Jun 11, 2019 6:10 am
by youngneil1
WIP:

1. DoPropMoves for relevant areas and props that meet above criteria
2. Barkstring floaties using area [i], too
3. DrawMovingProps extented to more movers props as doPropMoves
4. DrawProps must avoid affecting any movers now (drew those on neighbours beforhand)
5. Chaser code in doPropMoves will need condition that prop is on current map
6. Respawn code for props ideally is checked extented in the same way
7. Smooth out transition of time driven movers when they do the transition in the nearby zone

New helper methods:
1. Determine relevant areas based on current party location on current area, returns list<int> with relevant index numbers
2 determine prop distance cross maps: takes in prop p and index of area to check, returns true if distance is close enough for mover treatment

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Wed Jun 12, 2019 5:05 pm
by youngneil1
I have created my helper methods bool propIsWithinRelevantDistance(prop p, int index) and List<int> getNearbyAreas(). Small steps, but... onwards :) !

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Wed Jun 12, 2019 5:43 pm
by youngneil1
About a thousand lines of code in DoPropMoves alone to carefully go through… this will take time. A peak at the first Adjustments, using the helper methods in tandem:

Code: Select all
 foreach (int i in getNearbyAreas())
            {
                foreach (Prop p in gv.mod.moduleAreasObjects[i].Props)
                {
                    if (propIsWithinRelevantDistance(p,i))
                    {
                        if ((p.lastLocationX != p.LocationX) || (p.lastLocationY != p.LocationY))
                        {
                            p.lastLocationZ = p.LocationZ; 
                        }
                        p.LocationZ = gv.mod.moduleAreasObjects[i].Tiles[p.LocationY * gv.mod.moduleAreasObjects[i].MapSizeX + p.LocationX].heightLevel;
                    }
                }
            }

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Wed Jun 12, 2019 7:01 pm
by slowdive
Project Living World 2.0 :lol:

This will be awesome! Looking forward to all the living and breathing settings builders can create for some or all areas in their modules/campaigns.

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Wed Jun 12, 2019 7:18 pm
by youngneil1
Project Living World 2.0 :lol:


Hehe - yup, this would be it :D . It might easily be more than I can chew, but trying is fun in itself :P

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Mon Jun 17, 2019 1:36 pm
by youngneil1
I am still biting myself through thousands and thosuands of code lines here. It's very scary as I have to change so much in one sweep before I can test it :o . Well, no guts , no glory, no bugs, no bounty :lol: ...

I dont know yet if this leads anywhere, but no one will be able to say in the end that I did not try, harf!

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Mon Jun 17, 2019 5:18 pm
by Dorateen
Hey, youngneil1, if you have a chance could you look into something?

A while ago you implemented two alternatives for rolling stats at character creation, the hybrid system or rolls only, with the default setting being for point-buy. I believe this change was around build 144.

The point-buy system works fine. But when I changed the module properties to use the other methods, the button to "Finished" after rolling or modifying stats, does not seem to respond. I can toggle all the other character generation buttons, but at the bottom of the screen, the Finished button as well as the Beginner's guide/Help or Return buttons do not work.

This would lock a module into using the default point buy system as the only method.

I ran into this issue with build 156. If it works in the more recent builds, I'm not sure.

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Tue Jun 18, 2019 9:39 am
by youngneil1
Good find - thank you for the heads up, Dorateen :) . I think I found where I botched and will upload the fix later tonight.

Re: Coding Task List - Before IB2 Initial Release

PostPosted: Tue Jun 18, 2019 8:36 pm
by youngneil1
IB Beta v164 released - no liabilities, no warranties, use at your own risk:

https://www.dropbox.com/s/gew64iqjoh8f3 ... 4.zip?dl=0

- fixed bug on character creation screen that kept randomly rolling and hybrid system from working

Note: I hope that link works out, dropbox keeps harrassing me with upgrade demands.