yl_cinema #4668
Labels
No Label
1. kind/balancing
1. kind/breaking
1. kind/bug
1. kind/construction
1. kind/documentation
1. kind/enhancement
1. kind/griefing
1. kind/invalid
1. kind/meme
1. kind/node limit
1. kind/other
1. kind/protocol
2. prio/controversial
2. prio/critical
2. prio/elevated
2. prio/good first issue
2. prio/interesting
2. prio/low
3. source/art
3. source/client
3. source/engine
3. source/ingame
3. source/integration
3. source/lag
3. source/license
3. source/mod upstream
3. source/unknown
3. source/website
4. step/approved
4. step/at work
4. step/blocked
4. step/discussion
4. step/help wanted
4. step/needs confirmation
4. step/partially fixed
4. step/question
4. step/ready to deploy
4. step/ready to QA test
4. step/want approval
5. result/cannot reproduce
5. result/duplicate
5. result/fixed
5. result/maybe
5. result/wontfix
ugh/petz
ugh/QA main
ugh/QA NOK
ugh/QA OK
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: your-land/bugtracker#4668
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This issue deals with implementation and QA of small task your-land/administration#165 (comment) yl_cinema aka yl_powerpoint:
Write a function that takes in a playername and an id. When both are valid, the function reads a JSON file (according to the ID). In the JSON there's a structure like {id, name, description, title_texture, replay, [{order, texturename, caption, captionposx, captionposy, duration},{...}]}. Once the JSON is read, the target playername gets sent a formspec that displays the name of the movie, a description below, and the title texture in the background. As many as pages exist, they would be shown after "duration" seconds, with the texture in the background and a caption at captionposx, captionposy in the foreground. Only if replay is true, then teh player gets a replay button, so he can watch again.
Issues found so far:
Current thing is here: https://gitea.your-land.de/your-land/yl_cinema
2023-06-02 22:35:38: ERROR[Main]: ServerError: AsyncErr: Lua: Runtime error from mod 'yl_cinema' in callback node_on_dig(): Runtime error from mod 'yl_cinema' in callback node_on_destruct(): ...st_test/worldmods/yl_cinema/feature_bigscreen_entity.lua:120: attempt to index local 'ent_obj' (
2023-06-02 22:35:38: ERROR[Main]: a nil value)
2023-06-02 22:35:38: ERROR[Main]: stack traceback:
2023-06-02 22:35:38: ERROR[Main]: ...st_test/worldmods/yl_cinema/feature_bigscreen_entity.lua:120: in function <...st_test/worldmods/yl_cinema/feature_bigscreen_entity.lua:118>
2023-06-02 22:35:38: ERROR[Main]: [C]: in function 'remove_node'
2023-06-02 22:35:38: ERROR[Main]: /home/mt/5.7.0/Minetest_test/bin/../builtin/game/item.lua:532: in function 'old_node_dig'
2023-06-02 22:35:38: ERROR[Main]: ...test_test/bin/../mods/yl_commons/features/tool_alert.lua:323: in function <...test_test/bin/../mods/yl_commons/features/tool_alert.lua:317>
2023-06-02 22:35:38: ERROR[Main]: stack traceback:
2023-06-02 22:35:38: ERROR[Main]: [C]: in function 'remove_node'
2023-06-02 22:35:38: ERROR[Main]: /home/mt/5.7.0/Minetest_test/bin/../builtin/game/item.lua:532: in function 'old_node_dig'
2023-06-02 22:35:38: ERROR[Main]: ...test_test/bin/../mods/yl_commons/features/tool_alert.lua:323: in function <...test_test/bin/../mods/yl_commons/features/tool_alert.lua:317>
From traceback, looks like that may be caused by a missing screen?
19 and 20 fixed here:
209140a9fe
whosit: did you bug being able to remove the reel from a projector in a protected area, but not being able to put it back?
daydream wrote:
I assume it's this:
Alias wrote:
do smartshop entities still suffer from that? i'm pretty sure i fixed it. the solution is to add this to the entity definition:
I thought they shouldn't, so I set up a simple test and TNT blew them up (keeping the shop in place).
It was on a same test server where yl_cinema was tested, so should be recent?
Due to the 4dir issue (#4257) the smartshops on main and test are still on commit 0997e9f1cda6d4f0af111ff5f2bf5389d6303cd8
Thanks, I'll add the snippet
I'd like to see 2 classes of movies, educational and entertainment
EDU movies would be educational, available on the top floor of the basic tutorial and playable by removal from library style shelf and wielded while doing the /play command to start a solo viewing in formspec or played on a public projector in the study room at the top of the tutorial building
EDU movies can also be played FOR a player by staff or bailiffs in a formspec via the show command
ENT or entertainment movies would be playable by the creator of the movie either on screen via projector of their own or at an approved cinema movie theater.
If an ENT movie is turned into the library film board then it will be CC0 and anyone can take it like you would a library book and play it for themselves solo on formspec
To view it at an approved movie house I would say use a new priv for that so there aren't movie houses all over the place. Certain locations just make sense tho, Frost Hall comes to mind as it certainly has room for it and I think Jack would be interested in that, as well as North Haven DDTV Studio of course (see test server)
What I don't like for non-staff use is: /listmovies or /showmovie PlayerName MovieID
That can be staff only but wielding a movie and playing it solo should just be a simple /play command, so there's a difference between show and play in that sense.
To be a movie master and play movies for others could be a new priv also, called producer or director or cinematographer or something IDK
I would also like to be able to load up 10 movies and watch them all at once if possible, so some sort of 'the end.' board will be necessary to separate them I suggest all movies start and stop with intro/end boards
I had some trouble
/give
ing a movie item because/listmovies
lists IDs and items use mangled "movie title" for an itemstring.Depending on the usage, maybe list both? Or unify in some way?
Also, some commands use /list_something, other /something_list and this /listsomething -- would be nice to have them all in same format.
When it comes to commands, each command should start with a recognizable mod prefix. Noone wants to memorize which mod "delete_this" comes from. Is it areas? Does it delete the item you wield? What does it delete?? Unfortunately not even areas stick to that scheme: /area_pos1, /area_pos2, /protect.
I'd like to claim the "movie" prefix for the yl_cinema commands.
Would Repeat Play be bad? (just keeps looping)
Allow imprinting new movies on existing movie items
WHY?
Possibly need to implement the buttons to not respond once a cinema is playing. It seems to mess up the order and timing of the frames instead of just starting over and sorting itself out.
If you let it finish, when you start it again, it recovers, but if any buttons are pushed while a movie is playing, it goes pretty berserk and can't recover itself.
I'm pretty sure we could drop the rotating screen altogether... it's not a bad option to have but not sure how useful it is compared to fixed screen.
Maybe one button could show the empty 'reel' screen for checking size and placement but then not keeping showing it. That way a projector that isn't showing something doesn't have to be moved to see the stage beyond it?
If that doesn't make too much sense I can demo it any time. Also too many buttons on projector... how about just start (always 3 seconds) and show/hide screen toggle and end. End could be used to restart it without it messing up the whole movie, which is what it does now if you touch any button while a movie is playing (or just have start clear it out properly so it just restarts on the start button)
If you really want more buttons maybe 3 and 5 seconds but 10 is a long time...
on_activate
if the projector node is still there and self-remove if it is not.Proposed Guidelines for YL movies:
Should be <50 frames
Should fit our world either thematically or MT or YL-centric
Should be clean family entertainment suitable for all ages of course
To get a movie imprinted, you need to be the creator of that movie.
To get a projector to play it on, you need to build a theater that is voted on 50% and 20 votes minimum
You need to make a special movie for your world premiere and opening of your theater
If you create a movie and do not have a theater to play it at, you can get a theater owner with a projector to play your movie.
that seems low to me. what's the motivation? i figure most movies could be done well in around that many frames, but others could take a lot more. i don't have any plans to make any movies myself, but i could imagine 100 frame movies that i might actually watch? 200 frames is probably pushing my attention span, but i'm sure cinematic geniuses could use that much.
How about a combination with the level? New players could do a combination too, like it will be with new cities then?
problem is that every frame costs storage. That's no problem on servers or clients, but all those frames need to be transmitted, either upon login or when a user gets to see a movie. YL is already pretty hefty on assets compared to most other servers.
How about an indirect combination with the level? Number of master areas? Combine that number with your filming crew.