[mod] Bastet [bastet]

Post Reply
User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

[mod] Bastet [bastet]

by duane » Post

This mod creates small statues of Nyan-Bastet that can be found throughout the world. Each has a unique name which is retained in your inventory and its infotext, when you relocate it. Infotext will also show who found the statue. There are 900 statues in all, planted more than 2km apart on average, so they require quite a bit of walking. However, when a statue is generated, it will shout to everyone on the server that it can sense the approach of [name of the closest player]. You can then race to see who finds it first.

About half of the 900 statues will appear above ground. They will only appear in newly generated terrain. Around a third of the remainder will be a few hundred meters down. The rest are DEEP underground. In the future, some will be located in the realm of chaos (if you're running squaresville_c). Finding them underground is likely to be a major pain, but they do glow.

If you're running the booty mod and either nmobs or mobs_redo, unclaimed statues will summon monsters to defend them (in the same way booty treasure chests do). These will tend to wander, making the entire area dangerous.
Spoiler
Image
If you get tired of searching, you can make a sacrifice to Nyan-Bastet with the following recipe:

Code: Select all

  { '', '', ''},
  { 'default:gold_ingot', 'default:diamond', 'default:gold_ingot'},
  { 'default:papyrus', 'default:papyrus', 'default:papyrus'},
This will give you a piece of paper bearing the name and location of a random, undiscovered statue (which may be very far away). Mouse over the paper in your inventory to see the text. Note that there's only a 50% chance that you'll get a statue on the surface. Otherwise, you'll have to dig or try another sacrifice.

Other plans for the future:
  • Chat commands to allow anyone to track who found each statue and where.
  • Statues can be melted down for inspirations.
  • Powers for some of the statues.
    • "Holy" statues will destroy monsters in an area.
    • "Conquering" statues may be used as powerful weapons.
    • "Immortal" statues regenerate your hit points.
    • "Impervious" statues give you armor.
    • "Fleeting" statues give you fast run.
    • "Airy" statues give you flight.
    • "Blasted" statues may be detonated like TnT (without themselves being destroyed).
    • "Kaiju" statues turn into giant monsters and destroy your cities.
    • etc.
Note: This mod was designed for minetest v0.5, so there may be issues with the stable software. It requires a heightmap, so some mapgens may not work with it. (I can't find any specific examples, but most lua mapgens are right out.)


The source is available on github.

Code: LGPL2, Textures: CC by SA and CC0

Mod dependencies: default, inspire?

Download: https://github.com/duane-r/bastet/archive/master.zip
Attachments
t07.jpg
t07.jpg (460.51 KiB) Viewed 589 times
Last edited by duane on Wed Nov 01, 2017 01:49, edited 7 times in total.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Problems:
  • serious bug in map coordinates in database
Not Problems (won't fix):
  • Statues all look alike -- There are already 900. Even colorizing them would not give me enough different shades. Making different textures is out of the question.
Last edited by duane on Tue Oct 31, 2017 02:03, edited 2 times in total.
Believe in people and you don't need to believe anything else.

User avatar
Deadlock
Member
Posts: 50
Joined: Mon Aug 28, 2017 06:47
In-game: Jimmey

Re: [mod] Bastet [bastet]

by Deadlock » Post

I like it, collectibles are a nice addition.

But i can't find any.
I flew around in creative for 40 minutes and saw no message.
Then i opened the bastet_data.txt, picked a position and went there, but didn't find anything.
I have the statue in my creative inventory though (it gives an error-message when i try to place that).

Win7 - MT 0.4.16 - Mapgen: v7

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Deadlock wrote:I like it, collectibles are a nice addition.

But i can't find any.
I flew around in creative for 40 minutes and saw no message.
Then i opened the bastet_data.txt, picked a position and went there, but didn't find anything.
I have the statue in my creative inventory though (it gives an error-message when i try to place that).

Win7 - MT 0.4.16 - Mapgen: v7
You can't place a statue from creative. I need to bar them from creative inventory. And, yes, they're hard to find. You'll generate fewer than one in every four square kilometers (remember, half are still unplaced, and won't be on the surface when they are, so it's more like eight km^2). If you manage to generate an entire chunk every two seconds (quite a feat), you might see one in 41 minutes... maybe.

If you want to see them, go into the init.lua and set "DEBUG = true". That narrows the placement down to 1/625 of normal, so they occur in almost one out of two terrain chunks (though all will occur near origin). Unfortunately, every statue has to be referenced in a table in memory, so planting more is problematic, and minetest is a BIG place.

You may also have issues running this with stable, since they've just deprecated the inventory metadata functions for newer ones, but I don't think that's what you're seeing here.

Edit: And now that you mention it, I seem to have a major bug in my map coordinates in the database.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Ok, I've fixed that bug and added more error checking. The mod should shut down gracefully if there's a problem with the database.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

I've also added two settings -- number of statues (4 to 900) and distance between them (160 to 2000). Though if you set the distance low you're likely to get spammed by statues "sensing your presence".
Believe in people and you don't need to believe anything else.

User avatar
Deadlock
Member
Posts: 50
Joined: Mon Aug 28, 2017 06:47
In-game: Jimmey

Re: [mod] Bastet [bastet]

by Deadlock » Post

Great, now i found some; with range reduced to 160 and DEBUG on ;-)

Image
I had to write my own settingtypes.txt to change the range (you might have forgotten to upload it)
Spoiler

Code: Select all

# number of statues
bastet_number_statues (statues) int 900 4 900

# distance between statues
bastet_range (range) int 2000 160 2000

But if i try to pick them up, i get an error:
Bastet: Statue at (-167,52,-20) does not match any data entry
I'm still on 0.4.16. Is that related to the deprecated inventory metadata functions ?

screenshot_20171031_051150.png
screenshot_20171031_051150.png (339.85 KiB) Viewed 589 times

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

The first sacrifice recipe is:

Code: Select all

  { '', '', ''},
  { 'default:gold_ingot', 'default:diamond', 'default:gold_ingot'},
  { 'default:papyrus', 'default:papyrus', 'default:papyrus'},
This will give you a piece of paper bearing the name and location of a random statue (which may be very far away). Mouse over the paper in your inventory to see the text. Note that there's a 50% chance that you'll get a statue that won't be placed yet (being far underground or in chaos). Tough luck.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Deadlock wrote:]I had to write my own settingtypes.txt to change the range (you might have forgotten to upload it)
I just uploaded it.
Spoiler
But if i try to pick them up, i get an error:
Bastet: Statue at (-167,52,-20) does not match any data entry
I'm still on 0.4.16. Is that related to the deprecated inventory metadata functions ?
I don't think so. If that were the case, it ought to error out. Does the database actually contain that location?
Believe in people and you don't need to believe anything else.

User avatar
Deadlock
Member
Posts: 50
Joined: Mon Aug 28, 2017 06:47
In-game: Jimmey

Re: [mod] Bastet [bastet]

by Deadlock » Post

duane wrote: Does the database actually contain that location?
No.
But there is an entry at the same X & Z coordinates with an Y deep underground, that is set to true. I for shure have not been there.

Code: Select all

["exists"] = true, ["x"] = -167, ["z"] = -20, ["y"] = -30999}

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Deadlock wrote:
duane wrote: Does the database actually contain that location?
No.
But there is an entry at the same X & Z coordinates with an Y deep underground, that is set to true. I for shure have not been there.

Code: Select all

["exists"] = true, ["x"] = -167, ["z"] = -20, ["y"] = -30999}
That's odd. I've just uploaded a fix to the shuffling that will make the maps repeatable. Try using the latest version and see if you can find one that's missing. If you can, give me the location you looked at and the map seed, and I'll try to reproduce it.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

I've got the underground statues to spawn. Most will be DEEP underground, and hellish to dig down to, but at least a third should just be a few hundred meters down. If you're using squaresville_c, this puts them in the range of geomoria, but it's very difficult to spot the exact location of the tunnels, so I'm just placing them on any floor that's available.
Believe in people and you don't need to believe anything else.

User avatar
Deadlock
Member
Posts: 50
Joined: Mon Aug 28, 2017 06:47
In-game: Jimmey

Re: [mod] Bastet [bastet]

by Deadlock » Post

strange things happen here.

the new version of your mod crashes the 0.4.16 version on windows ( both the standard and sfan5s version).
starting a world with the bastet-mod will crash immediately, without any note in the debug.txt.

in version 0.5 it works. i get the chat-messages, i can find the statues and i can pick them up, no problem.
but the strange thing is: when i open bastet_data.txt to check the position of the statue i just found, the y-coordinate is way off in the ground.

as an Example:
Mapgen: v7
Seed: 123456
Range: 160
i find the Antedeluvian Moonstone Bastet at x: 115, y:21, z:-119
but bastet_data.txt contains:

Code: Select all

{["exists"] = true, ["x"] = 115, ["z"] = -119, ["y"] = -30999}

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Deadlock wrote:but the strange thing is: when i open bastet_data.txt to check the position of the statue i just found, the y-coordinate is way off in the ground.

as an Example:
Mapgen: v7
Seed: 123456
Range: 160
i find the Antedeluvian Moonstone Bastet at x: 115, y:21, z:-119
but bastet_data.txt contains:

Code: Select all

{["exists"] = true, ["x"] = 115, ["z"] = -119, ["y"] = -30999}
Thanks. I think I've quashed that bug.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Deadlock wrote:the new version of your mod crashes the 0.4.16 version on windows ( both the standard and sfan5s version).
That's probably caused by the new setting functions, so I added a check for them. Anyone using the older game won't be able to change the number or range of statues. I'm not going to spend much time on the older software, since this is mostly designed for squaresville_c.
Believe in people and you don't need to believe anything else.

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

If you're running the booty mod and either nmobs or mobs_redo, statues will now summon monsters to defend them (in the same way booty treasure chests do). (And watch those snakes. They'll hurt you.)

Image

I'm probably not going to break the summoning code out into a separate mod or copy it into bastet, though I might end up combining booty and bastet at some point, since they're both about treasure.
Attachments
t07.jpg
t07.jpg (507.6 KiB) Viewed 589 times
Believe in people and you don't need to believe anything else.

User avatar
Deadlock
Member
Posts: 50
Joined: Mon Aug 28, 2017 06:47
In-game: Jimmey

Re: [mod] Bastet [bastet]

by Deadlock » Post

great, everything works fine now ( still crashes 0.4.16 though).
i like the sacrifice and the guarding mobs. now i need a mod that provides a whip and a hat.
the amount of spawned mobs seems a bit high though.

regarding the colorizing of the statues, even though the 256 possible shades might not be enough to give all statues a different shade, i would like to see different colored statues. It's an incentive to look for more, and it would enhance their value as an deco-object.

User avatar
azekill_DIABLO
Member
Posts: 7507
Joined: Wed Oct 29, 2014 20:05
GitHub: azekillDIABLO
In-game: azekill_DIABLO
Location: OMICRON
Contact:

Re: [mod] Bastet [bastet]

by azekill_DIABLO » Post

wat the lol is that? It's sick!
Gone, but not dead. Contact me on discord: azekill_DIABLO#6565
DMs are always open if you want to get in touch!

User avatar
duane
Member
Posts: 1715
Joined: Wed Aug 19, 2015 19:11
GitHub: duane-r
Location: Oklahoma City
Contact:

Re: [mod] Bastet [bastet]

by duane » Post

Bastet statues now come in eight colors. (Eight's all you get if you want rotation, since they share the same byte.) Sadly, there is no way that I know of to tint a nodebox item in inventory. (The coloring system and nodeboxes don't work smoothly together... yet.)

You'll also find papers, showing the location of statues, in booty chests and v0.5 dungeon chests, if you're running the booty mod.
Believe in people and you don't need to believe anything else.

Post Reply

Who is online

Users browsing this forum: No registered users and 15 guests