Closed benloh closed 1 year ago
In GitLab by @jdanish on Apr 23, 2021, 12:59
Note that number 6 is the main "must have" and the rest are nice to have.
marked the checklist item 1. Blueprint should be Character Type as completed
In GitLab by @jdanish on Apr 24, 2021, 17:16
@benloh making sure you see the new items!
Thanks!
marked the checklist item 6. Setup stage is not sticking (it reverts) as completed
marked the checklist item 9. The links to add characters during stage setup no-longer appear as completed
mentioned in commit 13ee8743ec3927aa43f5eade94b94c37bb2258f3
6) and 9) addressed by 13ee8743ec3927aa43f5eade94b94c37bb2258f3
marked the checklist item 5. Re-loading the screen for character control (to fix scaling, for example) increments CC number (that's fine) but leaves the old one in the character inspector panel. So I might only have CC3 open, but 2 is still listed. Update: the actual characters are also left on the main stage. as completed
5) Agents belonging to Devices that drop out are now removed. 96bd90f857467c8036ed17fb58bed05ae04959f7
In GitLab by @jdanish on Apr 25, 2021, 04:31
This does seem fixed! The one exception (not sure if this is different code?) being that if a character disappears due to being changed to a new type (e.g., change fish to algae) then the device is listed twice, once for the original character and once for the new one.
In GitLab by @jdanish on Apr 25, 2021, 04:32
Confirmed.
In GitLab by @jdanish on Apr 25, 2021, 04:34
Re: #4, It appears it is not random. Rather, if you open and close "setup stage" no inspectors open. However: open inspector for fish01, go to setup stage, then back to run. inspector for fish01 re-opens as expected. However, if you then close the inspector, go to setup stage and back, it now re-opens. So, however the previously opened ones are being noted is not being flushed / reset?
In GitLab by @jdanish on Apr 25, 2021, 04:50
As context for 11, my goal is to support the "algae farmer" activity (see code in dev-jd/pilot if needed). What we would do is go to setup stage, hit algae 20 times, and then the "algae farmer" will just control main (since this wouldn't work with character controller yet). Anyhow, if t he algae or off the stage, it makes sense for the kid controlling the fish to avoid them. I set x and y to that coordinate in init, but they appear dead center no-matter what I do unless I also set them in the map setup. Maybe by reverting to "default" this is being over-ridden? Is there a better way to set the default or is this a bug?
OK for this it might be better to describe ideally what you want. CharControl is capable of generating multiple entities (like the old FakeTrack did). It might even be able to control them all together in a group.
Yeah that's different code, and the issue is already described in 3).
In GitLab by @jdanish on Apr 25, 2021, 10:14
The eventual model would be like a sticker / stamp where you could click all over the map and each time you do an algae would appear and it’s AI would take over. Seeing as that is I assume a big addition, we figured we could test the experience by adding a pile of algae to the edge of the screen and letting one kid move them on via main. Either way I’d expect the init positioning to override the default?
mentioned in commit fe7a92d922cff792784754fab3a8950d37f767d0
Fixed with fe7a92d922cff792784754fab3a8950d37f767d0
DisallowDeRegister
was not being passed correctly to the Inspector.
marked the checklist item 4. Re-set stage seeds to open up some prior character inspectors (I thought that was fixed in an earlier build but maybe not) as completed
mentioned in commit 71f2959fbb780ee43bbe841eb6634a33b173b20b
mentioned in commit 3ae1a04278a67ccfaa2cb47a041d4586dd2d4343
marked the checklist item 7. In setup stage we can't move AI items if they are behind user controlled so maybe set the z level? as completed
7 should be fixed with 3ae1a04278a67ccfaa2cb47a041d4586dd2d4343 NOTE: There might be a performance hit because of setting zIndex.
@jdanish Right now when you click to add an instance in the "ADD CHARACTER" panel, I insert a custom init script that places the newly created agent around the center of the screen. This was to prevent them all from piling up right on top of each other so you couldn't tell if you'd added anything.
The init
script runs after # PROGRAM DEFINE
, so init
will override anything you might have set in DEFINE
.
I see a couple of a solutions:
a. Change the code so it randomly places the new agent in a broader area (e.g. anywhere within the bounds of the project.
b. If you put your placement code in # PROGRAM INIT
, we can run that AFTER we run the auto-placement code. That would let you have final say over where the algae is placed.
c. Perhaps even simpler might be to simply not run the auto-placement script if # PROGRAM INIT
is present. That way we always know that # PROGRAM INIT
controls everything and there aren't any hidden overrides in the "ADD CHARACTER" panel call.
Long term, there's two separate issues I think: i. Yes, a stamping tool could be built. ii. We probably should have split Map Editor off into its own page so that Main control doesn't have to be given up. If you need/want to do this again via Zoom that should give you more flexibility. Even with the stamping tool you'd have to do this dance of figuring out who controls what.
I'll go ahead and implement c).
Depending on how the remaining items (2 and 3) go I could look into a stamp tool tomorrow.
In GitLab by @jdanish on Apr 25, 2021, 11:39
I'd actually lean towards b because every character we've made has some init, but few have x and y getting set.
To be clearer, also, the manipulation we are using to test this will be during run, not map setup. So it'd be the direct click and drag via main that we are looking at since that'd allow a kid to throw algae in front of the fish, or tempt the fish a new direction, etc.
Doh. Just saw this. I already implemented c). b) would be much harder to do currently because there isn't a quick way to grab all the code for a given pragma.
I've added a setRandomPositionY
Movement call so hopefully between those two, you can get what you want with # PROGRAM INIT
. e.g.
# PROGRAM INIT
prop x setTo -430
featCall Movement setRandomPositionY
dbgOut "Init"
See a8a33e9545163ebe22b525f80770e024875c610a and e8f38d25c23e2a12ca27849b6e085fecd9811708
marked the checklist item 11. Calls to set x and y in the # PROGRAM DEFINE section are ignored. as completed
marked the checklist item 3. If you change character type (fish to algae, and vice versa), each one adds a new device in the main screen list (with same number) as completed
marked the checklist item 2. The view panel doesn't re-scale, though reloading the controller fixes it (so not a huge deal yet) Update: this appears to be fixed, BUT the faketrack panel is not re-scaling, so you might lose the control button or not be able to move across the entire stage. as completed
marked the checklist item 10. BL: On RESET STAGE CharControllers revert back to upper left positions. as completed
10 fixed with d8400373869bb87c19951779ec439701e4072d6a. Same problem as #101
Closing this.
8 has been moved to a new issue #105.
In GitLab by @jdanish on Apr 23, 2021, 05:25
I can break these out but figured the first pass would be easier in one place: