[UPDATE] Rocks
- CaptainToenail
- Topic Author
- Wicked
Less
More
- Posts: 229
3 years 4 months ago - 3 years 4 months ago #1
by CaptainToenail
[UPDATE] Rocks was created by CaptainToenail
This is intended to replace the previous 'Necrodome Rocks' entry
- New original sprites
- Colour variants
- Randomisation effect
- Includes spawners for map editors to cover large circular areas quickly with random rocks
Attachments:
Last edit: 3 years 4 months ago by CaptainToenail.
Please Log in or Create an account to join the conversation.
- inkoalawetrust
- Moderator
Less
More
- Posts: 254
3 years 4 months ago #2
by inkoalawetrust
Replied by inkoalawetrust on topic [UPDATE] Rocks
Well first of all, the PNG sprites included could be further optimized to cut down their file size by nearly half with no quality loss, to not make this post x4 longer, here is a tutorial I made on Imgur on how to compress/optimize PNGs in SLADE, something that should really be done with all PNG graphics in ZDoom. https://imgur.com/a/DJ4x4hS
Now unto the code:
*Trust me, I tried to make it Zandronum compatible to give you recommendations on how to do it, key word, tried.
Now unto the code:
- The indentation needs fixing, it'd be better if you made proper spaces on the code done by pressing the TAB key in SLADE, instead of doing indentation with the spacebar.
- The code is written in DECORATE, but it's not Zandronum-compatible*, and so it would be better to write it in ZScript, that would also allow the code to be coalesced into only two actors. If you don't know ZScript or how to do that, then I could help you with the code.
- Why do the individual rocks have the IsMonster flag ? They are meant to be just rocks, so there's no reason to give them that flag.
- Use editor keys , by using editor keys you can add better editor integration to your resources and make using them easier, for example, you can use //$Title and //$Category to give actors proper names and put them in pre-existing or custom folders besides User-defined. I attached an example below that adds several keys to RockGreySpawner below, to make using it better and easier. Another example of such is giving the rock actors the //$NotAngled flag, since they have no reason to show the angle arrow in the editor.
Code:
//In-editor actor name.
//$Title Grey Rock Spawner
//Adds the actor in the built-in Obstacles folder, im a new Rocks folder.
//$Category Obstacles/Rocks
//Names the first argument field on the Action/Tag/Misc tab.
//$Arg0 "Rock Amount"
//Gives a tooltip to the argument.
//$Arg0Tooltip "The amount of rocks to spawn."
//$Arg1 "Spawn Radius"
//\n breaks the tooltip text to a new line.
//$Arg1Tooltip "The maximum radius relative to the spawner\nthat the rocks spawn around."
//Tells the editor that the actor is a decoration.
//$IsDecoration
Var int user_distance;
Var int user_amount;
Renderstyle none
+NOBLOCKMAP
+NOSECTOR
+DONTSPLASH
*Trust me, I tried to make it Zandronum compatible to give you recommendations on how to do it, key word, tried.
Please Log in or Create an account to join the conversation.
- CaptainToenail
- Topic Author
- Wicked
Less
More
- Posts: 229
3 years 4 months ago - 3 years 4 months ago #3
by CaptainToenail
Replied by CaptainToenail on topic [UPDATE] Rocks
is Zandronum compatibility a must-have requirements? The variables are required for the randomisation. ZScript is not Zandronum compatible either. At the end of the day the sprites themselves are the main feature and users are free to just take those out.
The ISMONSTER flag is to prevent the actor spawning in an area where there is no room.
The ISMONSTER flag is to prevent the actor spawning in an area where there is no room.
Last edit: 3 years 4 months ago by CaptainToenail.
Please Log in or Create an account to join the conversation.
- inkoalawetrust
- Moderator
Less
More
- Posts: 254
3 years 4 months ago - 3 years 4 months ago #4
by inkoalawetrust
Replied by inkoalawetrust on topic [UPDATE] Rocks
Zandronum compatibility is not a requirement, I just tried seeing if it would be possible because the DECORATE code mostly looked simple enough for Zandronum, but it turns out it wasn't even possible to get the randomized sprite flipping to work properly, So I just gave up on trying so I can recommend to you ways to make it compatible with Zandronum.
And yeah I know that the user variables are used for randomizing the scale of the rocks and distance of the spawners obviously, and that ZScript isn't supported by Zandronum, what I said is that since it's not possible to convert the code to Zandronum DECORATE without sacrificing functionality (Sprite flipping) so it can run on Zandronum. That it would be better to just use ZScript instead, to simplify and shorten the code to one spawner, and one rock actor with conditionally changing sprites.
And I don't really agree that Realm667 should just be the place that people go to rip sprites and sounds from, and that they should be coded in the most barebones manner possible.
In my opinion at least, the code for the stuff here should also be good and work well, since that is the most lacking aspect in a lot of the resources here it seems. Instead of the code for the actors being an afterthought, and the site just being known as a place with archives that have sprites and sounds in them for people to rip, and some basic vestigial nobody uses.
And if someone wants to just rip the assets and make their own code for them, they can also still just do that, while people who don't have the knowledge of how to make or code stuff can still have access to resources that not only have good assets, but good code as well.
Thoughts and opinions on what the submissions on this site should be like aside.
The IsMonster flag doesn't prevent the rocks from spawning in the void when spawned by A_SpawnItemEx. You can check that by placing down a spawner that has a radius large than the room it's in and goes out into the void. Then going in the automap and pressing IDDT on the keyboard until actors start appearing in the automap as their sprites.
And yeah I know that the user variables are used for randomizing the scale of the rocks and distance of the spawners obviously, and that ZScript isn't supported by Zandronum, what I said is that since it's not possible to convert the code to Zandronum DECORATE without sacrificing functionality (Sprite flipping) so it can run on Zandronum. That it would be better to just use ZScript instead, to simplify and shorten the code to one spawner, and one rock actor with conditionally changing sprites.
And I don't really agree that Realm667 should just be the place that people go to rip sprites and sounds from, and that they should be coded in the most barebones manner possible.
In my opinion at least, the code for the stuff here should also be good and work well, since that is the most lacking aspect in a lot of the resources here it seems. Instead of the code for the actors being an afterthought, and the site just being known as a place with archives that have sprites and sounds in them for people to rip, and some basic vestigial nobody uses.
And if someone wants to just rip the assets and make their own code for them, they can also still just do that, while people who don't have the knowledge of how to make or code stuff can still have access to resources that not only have good assets, but good code as well.
Thoughts and opinions on what the submissions on this site should be like aside.
The IsMonster flag doesn't prevent the rocks from spawning in the void when spawned by A_SpawnItemEx. You can check that by placing down a spawner that has a radius large than the room it's in and goes out into the void. Then going in the automap and pressing IDDT on the keyboard until actors start appearing in the automap as their sprites.
Last edit: 3 years 4 months ago by inkoalawetrust. Reason: Forgot to go into source mode to remove the garbage text that appears in my posts before posting the thread.
Please Log in or Create an account to join the conversation.
- KILLA DIO
- Lost Soul
Less
More
- Posts: 93
3 years 4 months ago #5
by KILLA DIO
Replied by KILLA DIO on topic [UPDATE] Rocks
If something isnt possible in zandro without weird workarounds, don't try make it zandro compatable, it's not your fault zandro uses a weird outdated version of zdoom
Please Log in or Create an account to join the conversation.
- Gothic
- Moderator
Less
More
- Posts: 1259
3 years 4 months ago - 3 years 4 months ago #6
by Gothic
Replied by Gothic on topic [UPDATE] Rocks
Since you're updating your own submission, you should not worry about Zandronum compatibility, so you can do what you want with the code.
Last edit: 3 years 4 months ago by Gothic.
Please Log in or Create an account to join the conversation.
- inkoalawetrust
- Moderator
Less
More
- Posts: 254
3 years 4 months ago - 3 years 4 months ago #7
by inkoalawetrust
Replied by inkoalawetrust on topic [UPDATE] Rocks
Yeah I didn't blame myself or something about it. I just checked to see if it would've been possible to make the rocks work on Zandronum, and after an hour and a lot of frustration it turned out that it couldn't be done without having to remove features from the submission.
Plus it's not like Toenail cared about making it Zandronum compatible in the first place anyway.
Plus it's not like Toenail cared about making it Zandronum compatible in the first place anyway.
Last edit: 3 years 4 months ago by inkoalawetrust. Reason: Forgot to go into source mode to remove the garbage text that appears in my posts before posting the thread.
Please Log in or Create an account to join the conversation.
- CaptainToenail
- Topic Author
- Wicked
Less
More
- Posts: 229
3 years 4 months ago - 3 years 4 months ago #8
by CaptainToenail
Replied by CaptainToenail on topic [UPDATE] Rocks
Ok going to keep this one simple. File updated, see below.Information:Name: RocksConnection: NonePalette: DoomSummon: RockGrey, RockBrown, RockTan, RockBlackAmbient Sound: noDe-/Activatable: noDestroyable: noSpecial Effects: random orientation and sprite Brightmaps: noActor modification: NoACS: noCredits:Submitted: Captain ToenailDecorate: Captain ToenailSprites: Captain Toenail
Last edit: 3 years 4 months ago by CaptainToenail. Reason: Removed old attachments
Please Log in or Create an account to join the conversation.
- inkoalawetrust
- Moderator
Less
More
- Posts: 254
3 years 4 months ago #9
by inkoalawetrust
Replied by inkoalawetrust on topic [UPDATE] Rocks
The actors could still benefit from having //$Title and //$Category editor keys, so they are properly categorized and named instead of having their actor names in-editor, and just being under the generic "User-defined" folder, the Obstacles folder would be the most fiting for them.
Please Log in or Create an account to join the conversation.
- CaptainToenail
- Topic Author
- Wicked
Less
More
- Posts: 229
3 years 4 months ago #10
by CaptainToenail
Replied by CaptainToenail on topic [UPDATE] Rocks
These are good tips inkoalawetrust, I will keep these in mind for future updates. I have updated the entry. Unless there are any other issues please consider this my final update.
Information:
Name: Rocks
Connection: None
Palette: Doom
Summon: RockGrey, RockBrown, RockTan, RockBlack
Ambient Sound: no
De-/Activatable: no
Destroyable: no
Special Effects: random orientation and sprite
Brightmaps: no
Actor modification: No
ACS: no
Credits:
Submitted: Captain Toenail
Decorate: Captain Toenail
Sprites: Captain Toenail
Information:
Name: Rocks
Connection: None
Palette: Doom
Summon: RockGrey, RockBrown, RockTan, RockBlack
Ambient Sound: no
De-/Activatable: no
Destroyable: no
Special Effects: random orientation and sprite
Brightmaps: no
Actor modification: No
ACS: no
Credits:
Submitted: Captain Toenail
Decorate: Captain Toenail
Sprites: Captain Toenail
Attachments:
Please Log in or Create an account to join the conversation.