Language…
9 users online: Abdu, AbeLinkn, h.carrell, Josuke Yoshikage, MrChompinkski, Rodrigo56, , Udjat, Yoshi Master - Guests: 42 - Bots: 299
Users: 66,265 (2,219 active)
Latest user: Rodrigo56

PIXI v1.42 - Sprite Insertion Tool

Waiting Tools → PIXI v1.42 - Sprite Insertion Tool

Screenshots

View all

HammerBrother
Oh. so its doing in 16-bit to mitigate the error then. Simple javascript code (you can enter into your devtools) that tests the modulo bias:
Code
```function TestModuloBiasRNG(max, SourceRNGMax) {
//Input:
// max = reduced RNG maximum
// SourceRNGMax = the original RNG max value, plus 1 (256 for 8-bit, 65536 for 16-bit)
//
//Output: An array, each element index corresponds to each consecutive integers of the target range,
// whose values they contain represents how many source RNG values would result a given number in the output.
//
//Example: convert 0-65535 to 0-2 means TestModuloBiasRNG(2, 65536), would output [21846, 21845, 21845], that means:
//The chance of getting a 0 is 21846/65536
//The chance of getting a 1 is 21845/65536
//The chance of getting a 2 is 21845/65536

let ListOfOdds = new Array(max+1).fill(0)
for (i = 0;i<SourceRNGMax;i++) {
ListOfOdds[i % (max+1)]++
}
return ListOfOdds
}
function GetPercentage(value, max) {
return value*100/max //Why multiply first instead of divide? See this: https://en.wikipedia.org/wiki/Talk:Rounding#any_mentions_that_best_only_round_at_the_final_step_when_possible?
}```

Comparison:
Code
```Test = TestModuloBiasRNG(2, 256)
(3) [86, 85, 85]
Test.map(value => GetPercentage(value, 256).toFixed(5))
(3) ['33.59375', '33.20313', '33.20313']
Test2 = TestModuloBiasRNG(2, 65536)
(3) [21846, 21845, 21845]
Test2.map(value => GetPercentage(value, 65536).toFixed(5))
(3) ['33.33435', '33.33282', '33.33282']```

When comparing with akaginite's range RNG, (RangedRNG = floor(rand*(max+1)/256)) or RangedRNG = floor(rand*(max+1)/65536))), especially with larger ranges, Akaginite's have values that are more likely are spread out across the target range (test this), while the modulo one have values that are more likely are at the lower values, consecutively, in the range.
HammerBrother
Looking at %random() in this submission:

That still looks like it is performing Ranged_RNG = rand % Max+1, that's having modulo bias. You submitted the wrong file? Here's a better RNG patch, which included a better RNG range routine (calculated as RangedRNG = floor(rand*(max+1)/256)). Slight uneven distribution are up to 1/256 chance difference.

How it works? We treat this as cross-multiply: rand/256 = value/max+1 and round down. It is the equivalent of doing the same in javascript. A random number is 0 <= rand < 1 (0 included, 1 excluded), which is equivalent to rand/256 (but we don't divide yet to reduce rounding errors), when then take that number and multiply by max+1. This will scale the RNG with approximately equal distribution to a different-size range. Only difference is that in JS, because it supports floating points, you can scale to a larger range, where as integers, you cannot (without having some values in the enlarged range not possible).
Author
I did not submit the wrong file. That %Random() routine is the result of this PR.
I think it should simply say "less" instead of "without". There's still some modulo bias, but the division is performed on a 16-bit random number now instead of an 8-bit one. The previous version could exhibit fairly extreme bias for certain maxima, while the newer one is much more reasonable.
Lukaakul From older version: PIXI v1.40 - Sprite Insertion Tool
How do I use this
kramsdell From older version: PIXI v1.40 - Sprite Insertion Tool
my antivirus what the heck
From older version: PIXI v1.40 - Sprite Insertion Tool
Tested within: Windows 11.

After weeks testing sprite after sprite, I went into testing the misc sprites as well, among some of the new features and the normal stability test. Resuming everything, I did not find enough issues for a rejection, for everything I tested worked fine.

That being said, my only suggestion was to improve the readme, which is already being done for the next versions. This is minor, though, and won't sway my final decision, which is to accept this update.
fantasma king From older version: PIXI v1.32 - Sprite Insertion Tool
I have a problem, i could not extrat sprites because dont have the config.asm
Vash the fairytail From older version: PIXI v1.32 - Sprite Insertion Tool
I found a bug.
If I put in 7B in PIXI.
I get a goal bar no matter what custom sprite I select.
From older version: PIXI v1.32 - Sprite Insertion Tool
It's not a bug but a consequence of Lunar Magic 3's custom goal tapes for secret exits 2 and 3. It should probably be mentioned in the readme or something though...
SmokyShroom From older version: PIXI v1.40 - Sprite Insertion Tool
Originally posted by Atari2.0
Because I'm currently the only active tool moderator and I can't moderate this resource because I'm the current maintainer.

Sorry to hear! Is the site accepting volunteers? I would need to be more active on the forums and qualify myself first, but I've been in this community for eight years on and off.
SmokyShroom From older version: PIXI v1.40 - Sprite Insertion Tool
Why hasn't the staff approved this?
Author From older version: PIXI v1.40 - Sprite Insertion Tool
Because I'm currently the only active tool moderator and I can't moderate this resource because I'm the current maintainer.
snowflag841 From older version: PIXI v1.32 - Sprite Insertion Tool
I have a problem, when i put the file smc in pixi, it say that could not open the smc file
Isikoro From older version: PIXI v1.40 - Sprite Insertion Tool
Originally posted by Atari2.0
That's fine, everybody can learn it.

Author From older version: PIXI v1.40 - Sprite Insertion Tool
This is not how it works. You don't *push* directly to the original repository. You make your changes on your own fork and then open a pull request, here are the japanese docs from github on how to do that: https://docs.github.com/ja/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests
Roberto zampari From older version: PIXI v1.40 - Sprite Insertion Tool
Originally posted by Atari2.0
Yes, it is, this version is 64-bit only.

Can you do for both 32-bit and 64-bit versions?
Author From older version: PIXI v1.40 - Sprite Insertion Tool
Roberto zampari From older version: PIXI v1.40 - Sprite Insertion Tool
This version is imcompatibe with my PC.
I'm using Windows 10 32-bit (x86).
Author From older version: PIXI v1.40 - Sprite Insertion Tool
Yes, it is, this version is 64-bit only.
Dragul66 From older version: PIXI v1.32 - Sprite Insertion Tool
Hello there. I have a problem. When I want to insert a sprite PIXI can't open config.asm. What can I do to fix this problem?
Eli Moskowitz From older version: PIXI v1.40 - Sprite Insertion Tool
Patches that disable score sprites are apparently incompatible with this new version of PIXI
Isikoro From older version: PIXI v1.40 - Sprite Insertion Tool
Originally posted by Atari2.0
Feel free to open an issue/pull request here https://github.com/JackTheSpades/SpriteToolSuperDelux with whatever you want to be added and I'll review it and decide if it's worth adding..

I am sorry. I don't know how to do it.
Author From older version: PIXI v1.40 - Sprite Insertion Tool
That's fine, everybody can learn it.
Anas From older version: PIXI v1.40 - Sprite Insertion Tool
Originally posted by Isikoro
Can I have these routines attached to PIXI? (Just the ones that are acceptable)
Also, why does the custom extended sprite increase YSpeed by 3 when gravity is applied? Normally it should increase by 2.

Yeah, I also find Sonikku’s hammer’s gravity a bit too much. But I’m using your patch with PIXI 1.40 and it works just fine from my testing. I even used the patch with Atari’s test suite version from a year ago and it worked just fine. All thanks to my rigorous testing!
Isikoro From older version: PIXI v1.40 - Sprite Insertion Tool
Can I have these routines attached to PIXI? (Just the ones that are acceptable)
Also, why does the custom extended sprite increase YSpeed by 3 when gravity is applied? Normally it should increase by 2.

Author From older version: PIXI v1.40 - Sprite Insertion Tool
Feel free to open an issue/pull request here https://github.com/JackTheSpades/SpriteToolSuperDelux with whatever you want to be added and I'll review it and decide if it's worth adding..
HammerBrother From older version: PIXI v1.32 - Sprite Insertion Tool
When using this tool, I recommend not have any other programs such as LM have the ROM opened, I've experioenced crashes. Kinda strange on why this occurs. It happened to me when first insertion on the ROM the first time.
Author From older version: PIXI v1.32 - Sprite Insertion Tool
This is not true
El Cuh Fermin From older version: PIXI v1.32 - Sprite Insertion Tool
This tool also works with custom powerups. But I gonna use with SA-1 1.32 version for temporary
Soul From older version: PIXI v1.32 - Sprite Insertion Tool
VERY IMPORTANT

If your rom crashes on sprite apply then delete all unused sprite files
gohkenytp8 From older version: PIXI v1.32 - Sprite Insertion Tool
I suddenly came across an error within the "sprites/40 00" file.
Is there any way to fix it?
Mapping_bl From older version: PIXI v1.32 - Sprite Insertion Tool
very nice for SMW
Author From older version: PIXI v1.32 - Sprite Insertion Tool
Originally posted by CaptainWeird
Does anyone know the solution to this problem I'm having? I'm not even able to attempt to insert a sprite cuz every time I give pixi my rom I get "You haven't installed the VRAM optimization patch in Lunar Magic, this will cause many features of Pixi to work incorrectly, insertion was aborted..."

Does anyone know what this means/how to fix it? Idk what this patch its referring to is, and I cant find any info online

The patch is contained within Lunar Magic. It is applied as soon as you modify any levels of your ROM with it.
Author From older version: PIXI v1.32 - Sprite Insertion Tool
If you encounter an issue with Pixi saying that it's not able to open a file and you have ANY special characters in your path, such as àèéìòù or others, please download it from here and that should work.
D1STYNCT From older version: PIXI v1.32 - Sprite Insertion Tool
Since it's not specifically mentioned in the readme.txt, I figured out that the character to start comments in your list.txt (as of v1.32) is a semi-colon (;).

On any line (blank lines or on a sprite definition row) anything after a (;) will be considered a comment and be ignored while PIXI runs. This makes it easy to add notes, for example which ExGFX goes with which custom sprite.

Code
`00 propeller_block.cfg   ; ExGFX80 => SP2`
lx5 From older version: PIXI v1.31 - Sprite Insertion Tool
From older version: PIXI v1.2.15 - Sprite Insertion Tool
Tested within Windows 10.

Aside of the basic functionalities being preserved, I tested all the new additions and they work. Then, let's accept this.
Wolfguy423 From older version: PIXI v1.2.14 - Sprite Insertion Tool
i need a walk-through to use this that's made for a complete idiot apparently. i dont understand this at all.. :-(
TorbiBoy From older version: PIXI v1.2.14 - Sprite Insertion Tool
It's super simple but works totally fine! Thanks for creating this tool, it's very helpful and there would be way less to do in Terms of Sprites!
MegaSonic1999 From older version: PIXI v1.2.14 - Sprite Insertion Tool
I don't know where to insert the -pl flag for sprites per levels, because pixi.bat file is not available. Could you help me out with this? I'm using version 1.2.10
Sonck's entertainment From older version: PIXI v1.2.14 - Sprite Insertion Tool
Lo que pasa para usar PIXI es escribir la dirección de la herramienta y poner antes una carpeta como Desktop y creo que así funcionaria
TheNooseMan87 From older version: PIXI v1.2.14 - Sprite Insertion Tool
I downloaded this new version of pixi and it said that it would not work on windows so i downloaded a previous version of pixi but it also would not work on windows. Could you help me out? its been working before i downloaded this new version. Thanks!
From older version: PIXI v1.2.14 - Sprite Insertion Tool
Tested on Snes9X 1.56, BSNES+ v05, LM 3.10, SA-1
From older version: PIXI v1.2.13 - Sprite Insertion Tool
Originally posted by Wolfguy423
how do i even use it? any instructions for dum dums?

If you're used to other smw hacking tools as AMK or GPS it shouldn't be that hard, but in any case, there's a tutorial here
Wolfguy423 From older version: PIXI v1.2.13 - Sprite Insertion Tool
Guess i need my hand held for this. how do i even use it? any instructions for dum dums? attempting a romhack. thanks in advance!
From older version: PIXI v1.2.13 - Sprite Insertion Tool
Tested with LM 3.10, Snes9x/BSNES, SA-1
Tattletale Author From older version: PIXI v1.2.12 - Sprite Insertion Tool
I'm currently locked out of my github account. If you need the fix earlier, contact me on discord.
Tattletale Author From older version: PIXI v1.2.12 - Sprite Insertion Tool
it's been broken since 1.2.10, released in July.
Tattletale Author From older version: PIXI v1.2.12 - Sprite Insertion Tool
Currently there's a bug with pixi in which it's not really displacing sprite data correctly, causing sprites not to spawn or spawn bugged up sprites. The reason this never happens is because LM3 has a proper cache for that. Some times the cache fails and pixi has to take over the cache, in those cases, sprites are not spawning properly (mostly for super tall levels, don't know the specifics).
This will be fixed within this week.
El Cuh Fermin From older version: PIXI v1.2.12 - Sprite Insertion Tool
When is going to have Oveworld sprites
ASMagician Maks From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by Romano338
I don't get the trashkas removal. Have I missed something? I have an old sprite that I can't insert because I need to convert it, but I have no way of doing it.

Romano338 From older version: PIXI v1.2.10 - Sprite Insertion Tool
I don't get the trashkas removal. Have I missed something? I have an old sprite that I can't insert because I need to convert it, but I have no way of doing it.
JuanGamerSTC7 Br From older version: PIXI v1.2.10 - Sprite Insertion Tool
I inserted a custom sprite into my smw rom but the game is no longer running on the emulator (neither znes nor snes9x) what do I do?
how do i remove the rom sprite?
Tattletale Author From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by zipper
file path name is not in English that error happened.

Yeah it's made in C/C++ (mostly C), it is not accounting for encoding whatsoever.
I will register that as a bug in the github, but do not expect that to be fixed lol.
zipper From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by Tattletale
Originally posted by zipper
I have an error when I try to insert sprites. After I type my ROM's name and press enter, it said:
Quote
An error has been detected: spr_temp.asm:2: error: (E5016): File 'C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm' wasn't found. [incsrc "C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm"]

The same happened to _header.asm and asm files of sprites I try to insert, though these file exist in a correct folder. I read readme and then think that this error is relevant to incsrc/incbin, but I don't know what this is and what I shoud do.

You fucked up your folder, they are all inside the zip file.

I didn't, but problem was resolved. It is because file path name is not alphabet that error happened.
Tattletale Author From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by zipper
I have an error when I try to insert sprites. After I type my ROM's name and press enter, it said:
Quote
An error has been detected: spr_temp.asm:2: error: (E5016): File 'C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm' wasn't found. [incsrc "C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm"]

The same happened to _header.asm and asm files of sprites I try to insert, though these file exist in a correct folder. I read readme and then think that this error is relevant to incsrc/incbin, but I don't know what this is and what I shoud do.

You fucked up your folder, they are all inside the zip file.
zipper From older version: PIXI v1.2.10 - Sprite Insertion Tool
I have an error when I try to insert sprites. After I type my ROM's name and press enter, it said:
Quote
An error has been detected: spr_temp.asm:2: error: (E5016): File 'C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm' wasn't found. [incsrc "C:/Users/…(my directory)…/pixi_v1.2.10/asm/sa1def .asm"]

The same happened to _header.asm and asm files of sprites I try to insert, though these file exist in a correct folder. I read readme and then think that this error is relevant to incsrc/incbin, but I don't know what this is and what I shoud do.
Tattletale Author From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by autisticsceptile1993
For some reason this causes any gfx/exgfx in Lunar to be resetted to 0

No. Pixi doesn't touch anywhere near there.
The only way to corrupt your rom with pixi is if you run pixi without any normal sprites in its list and then run it again, blowing up your rom. The issue is listed in the known issues link and this would cause your rom to crash before entering the showoff level, right after the nintendo presents screen.
If that's not the case, you will have to check on your own what corrupted your rom.
autisticsceptile1993 From older version: PIXI v1.2.10 - Sprite Insertion Tool
For some reason this causes any gfx/exgfx in Lunar to be resetted to 0
chineesmw From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by Tattletale
Originally posted by MinecraftGamerLR
I can't even insert custom sprites, there's no list.txt file included! 0/10.
Create it you dingus.

Great tool!!
AyGaAlPa From older version: PIXI v1.2.10 - Sprite Insertion Tool
Excellent, as always
Tattletale Author From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by Kiatus
lol and he even rated it 1 star

Free speech and a not-so-free rate systems are a pretty cool combination, aren't them?
I don't care about pixi's ratings. What is he gonna do? Use another tool? Be my guest lmao.
Kiatus From older version: PIXI v1.2.10 - Sprite Insertion Tool
lol and he even rated it 1 star
Tattletale Author From older version: PIXI v1.2.10 - Sprite Insertion Tool
Originally posted by MinecraftGamerLR
I can't even insert custom sprites, there's no list.txt file included! 0/10.
Create it you dingus.
MinecraftGamerLR From older version: PIXI v1.2.10 - Sprite Insertion Tool
I can't even insert custom sprites, there's no list.txt file included! 0/10.
Gamma V From older version: PIXI v1.2.9 - Sprite Insertion Tool
SubOffScreen might be bugged. The Baron Von Zeppelin sprite crashes the game if it's allowed to spawn above the vertical boundary or to the left of the horizontal boundary. Some other sprites may do the same thing.
Green Jerry From older version: PIXI v1.2.9 - Sprite Insertion Tool
Is it just me or are SA-1 Convert and Trashkas missing from the converter tools folder? Only their readmes are there.
chineesmw From older version: PIXI v1.2.9 - Sprite Insertion Tool
Is it possible to allow comments on the list.txt for the next version of PIXI?
Mechanical koopa From older version: PIXI v1.2.9 - Sprite Insertion Tool
What is the difference between extended and cluster sprites?
Red Dino From older version: PIXI v1.2.9 - Sprite Insertion Tool
nice
TheLucraftTeam From older version: PIXI v1.2.8 - Sprite Insertion Tool
i found a issue, when i insert a sprite into my hack, it says unknown filetype, but the file type is not unknown, so are you kidding me pixi?
Zavok From older version: PIXI v1.2.9 - Sprite Insertion Tool
A beautiful version of tools!
ASMagician Maks From older version: PIXI v1.2.9 - Sprite Insertion Tool
Knowing Tattletale, the next update will have the cursed 1.2.10 numbering.
Green Jerry From older version: PIXI v1.2.9 - Sprite Insertion Tool
Another update!!
Tattletale Author From older version: PIXI v1.2.8 - Sprite Insertion Tool
Routine Star.asm is bugged as well. Reported by Darolac. This issue was actually reported to me by Blinddevil and fixed to me by him himself like more than one year ago, but I forgot about that.

Code
```;Routine that star-kills the sprite and gives Mario points.
;Doesn't check whether Mario actually has a star.
PHB
PHK
PLB
JSL \$01AB6F|!BankB
LDA #\$02                ; \ sprite status = 2 (being killed by star)
STA !14C8,x             ; /
LDA #\$D0                ; \ set y speed
STA !AA,x               ; /
JSR .SubHorzPos
LDA .speed,y            ; \ set x speed based on sprite direction
STA !B6,x               ; /
INC \$18D2|!Base2        ; increment number consecutive enemies killed
LDA \$18D2|!Base2        ; \
CMP #\$08                ; | if consecutive enemies stomped >= 8, reset to 8
BCC ?+                   ; |
LDA #\$08                ; |
STA \$18D2|!Base2        ; /
?+        JSL \$02ACE5|!BankB      ; give mario points
LDY \$18D2|!Base2        ; \
CPY #\$08                ; | if consecutive enemies stomped < 8 ...
BCC ?+                   ; |
LDY #\$08
?+        LDA .sound,y            ; |    ... play sound effect
STA \$1DF9|!Base2        ; /
PLB                        ;
RTL                     ; final return

.speed    db \$F0,\$10
.sound    db \$00,\$13,\$14,\$15,\$16,\$17,\$18,\$19,\$03

.SubHorzPos
LDY #\$00
LDA \$94
SEC
SBC !E4,x
STA \$0E
LDA \$95
SBC !14E0,x
STA \$0F
BPL ?+
INY
?+        RTS ```

Here's the fixed version.

I will update pixi with these two fixes (this and the other one I posted here) this weekend.
From older version: PIXI v1.2.8 - Sprite Insertion Tool
Thank you! I've been waiting for a miracle like this to happen for centuries. lol.
Tattletale Author From older version: PIXI v1.2.8 - Sprite Insertion Tool
ExtendedDrawInfo routine is currently broken. It will be updated soon. Reported by Darolac.

Replace it with this:

Code
```; Gets the OAM index to be used, deletes when off screen, etc.

LDA.l .OAMPtr,x
TAY

.noIndex
LDA \$1747|!Base2,x
AND #\$80
EOR #\$80
LSR
STA \$00
LDA \$171F|!Base2,x
SEC
SBC \$1A
STA \$01
LDA \$1733|!Base2,x
SBC \$1B
BNE .erasespr
LDA \$1715|!Base2,x
SEC
SBC \$1C
STA \$02
LDA \$1729|!Base2,x
BEQ .neg
LDA \$02
CMP #\$F0
BCS .erasespr
RTL
.neg	LDA \$02
CMP #\$C0
BCC .erasespr
CMP #\$E0
BCC .hidespr
RTL
.erasespr
STZ \$170B|!Base2,x	; delete sprite.
.hidespr
LDA #\$F0	; prevent OAM flicker
STA \$02
RTL

.OAMPtr
db \$90,\$94,\$98,\$9C,\$A0,\$A4,\$A8,\$AC
```
S.R.H. From older version: PIXI v1.2.8 - Sprite Insertion Tool
is it me or does command line option -l not work 🤔
From older version: PIXI v1.2.8 - Sprite Insertion Tool
A minor update, but works as intended and it is still stable. Since I tend to use the newest versions when moderating sprites, the tests made give me enough input to accept this.
trillian From older version: PIXI v1.2.8 - Sprite Insertion Tool
fed to the rules and i hit the ground running
From older version: PIXI v1.2.8 - Sprite Insertion Tool
and they don't stop coming
From older version: PIXI v1.2.8 - Sprite Insertion Tool
nice
From older version: PIXI v1.2.7 - Sprite Insertion Tool
Just a routine update. Since it does not break the routines that were updated by this version, and it works as usual, I've come to terms to accept the tool.
zacmario From older version: PIXI v1.2.7 - Sprite Insertion Tool
What version of .net does the cfg editor use?
From older version: PIXI v1.2.6 - Sprite Insertion Tool
Tested and works fine, donut lift included. Judging by the tests I made, I think is stable enough to be accepted.
Tattletale Author From older version: PIXI v1.2.6 - Sprite Insertion Tool
I don't really care about what the staff plan on doing with giepy. I will keep on updating pixi so long I/people need it.
zacmario From older version: PIXI v1.2.6 - Sprite Insertion Tool
Feeling confused. I see more updates for pick, but I keep hearing giype or whatever is gonna be the one.
Tattletale Author From older version: PIXI v1.2.4 - Sprite Insertion Tool
Tattletale Author From older version: PIXI v1.2.4 - Sprite Insertion Tool
There's an issue with this release I caused. I set the perlevel flag in asm/main.asm as default 0. This apparently causes issues with inserting / spawning shooters.

I will make a new pixi release (1.2.5) and I will turn off the perlevel feature by default (currently it's turned half on, which is not good, prior versions were on). Shouldn't take long for the release to be submitted.

Meanwhile, you can use the good old -npl flag and make a bat with it like:

Code
```@echo off
pause
```

*pause is optional*
*save it as <whatever name you want>.bat*

Next release this flag will do nothing but won't cause any harm and a new flag called -pl will be added to toggle perlevel insertion.

Any questions or issues, you can find me in discord.
From older version: PIXI v1.2.4 - Sprite Insertion Tool
Still as good, and works with LM's newest features.
ASMagician Maks From older version: PIXI v1.2.4 - Sprite Insertion Tool
Still as good
Vitor Vilela From older version: PIXI v1.2.4 - Sprite Insertion Tool
If someone could sync the previous versions to the Git repository it would be appreciated. Looks a tad outdated.
Vitor Vilela From older version: PIXI v1.2.4 - Sprite Insertion Tool
Special thanks to Tattletale for his incredible work on this build. High expectations to just version be much more reliable compared to the old versions.
ShrekDaKoopa From older version: PIXI v1.2.3 - Sprite Insertion Tool
U r very good
trillian From older version: PIXI v1.2.3 - Sprite Insertion Tool
You forgot to update the changelog. I fixed that for you. I also slightly changed the comment at the top of Random.asm (it still mentioned Y instead of A).

also, someone should really backport these changes to the github repo
zacmario From older version: PIXI v1.2.3 - Sprite Insertion Tool
OK, I understand now. Thanks for the clarifactions.
HammerBrother From older version: PIXI v1.2.3 - Sprite Insertion Tool
Does this uses the newest version of Asar?
From older version: PIXI v1.2.3 - Sprite Insertion Tool
See what Erik said. The whole process with GIEPY still needs a bit more work before we can safely make the switch. This is a minor update to PIXI to stabilize it - after all, we don't want people using buggy tools just because GIEPY isn't fully ready yet.
From older version: PIXI v1.2.3 - Sprite Insertion Tool
GIEPY but it still needs some testing before making the full move.
zacmario From older version: PIXI v1.2.3 - Sprite Insertion Tool
Feeling really confused, will the site support pixi or giepy in the end???
SubconsciousEye From older version: PIXI v1.2.3 - Sprite Insertion Tool
thanks jack
ASMagician Maks From older version: PIXI v1.2.3 - Sprite Insertion Tool
yay
From older version: PIXI v1.2.3 - Sprite Insertion Tool
From older version: PIXI v1.2.3 - Sprite Insertion Tool
more like can we move to giepy haha
From older version: PIXI v1.2.3 - Sprite Insertion Tool
This is a very minor update to the tool. I've upgraded the Asar library to 1.60 to help prevent the softlock issue. I've also fixed the Aiming routine, fixed the crash in ExtendedGetDrawInfo, and fixed various problems with the Random routine which were discovered in #asm a couple of minutes ago.
From older version: PIXI v1.2.2 - Sprite Insertion Tool
ExtendedGetDrawInfo is still broken.
YoshioSK From older version: PIXI v1.2.2 - Sprite Insertion Tool
The donut life sprite is still broken. Please fix this!
Brunamaraferreira5 From older version: PIXI v1.2.2 - Sprite Insertion Tool
Olá pessoal sou nova aqui mas se alguém tiver disposto a me ajudar pois não consegui baixar um jogo que dirá criar um kkk obg
trillian From older version: PIXI v1.2.2 - Sprite Insertion Tool
I undid the RTS->RTL, since that wasn't the main return in Star.asm, it was only a subroutine, which was called via JSR .SubHorzPos.

Also, these changes should probably be merged back into the GitHub repo too (which is a bit inconvenient, considering that the only active person who has push access to the repo is RPG Hacker but he doesn't have internet at home currently, only at work).
ASMagician Maks From older version: PIXI v1.2.2 - Sprite Insertion Tool
Still the best Sprite Tool
From older version: PIXI v1.2.2 - Sprite Insertion Tool
Fixed Star.asm, which didn't have a bank wrapper, thus not reading tables correctly, and changed a faulty RTS to RTL. Also fixed sa1def.asm, uncommenting the !7FAB64 define macro used for Extra Byte 4, and also correcting its default SA-1 address for !extra_byte_4 define, used by the tool, which was wrong (default was \$4000D8 when the correct is meant to be \$4000DB).
Circus Charlie From older version: PIXI v1.2.1 - Sprite Insertion Tool
I would prefer it to be a new version because it does not work with me, something needs to be improved
Activisor From older version: PIXI v1.2.1 - Sprite Insertion Tool
how do you use it
Activisor From older version: PIXI v1.2.1 - Sprite Insertion Tool
how do you use it
Elie Barnes From older version: PIXI v1.2.1 - Sprite Insertion Tool
until these bugs are fixed, i'm sticking with spritetool
obersteiner86 From older version: PIXI v1.2.1 - Sprite Insertion Tool
If i insert are sprite with it my game starts but i dont see mario and it freeze at the title screen i us are sa-1 rom
smwgohken From older version: PIXI v1.2.1 - Sprite Insertion Tool
All sprites crash when they create projecttiles for create a custom sprite!
gblake90 From older version: PIXI v1.2.1 - Sprite Insertion Tool
Does anybody have a tutorial to this... and in ENGLISH?!!!
From older version: PIXI v1.2.1 - Sprite Insertion Tool
%Star() still misses its necessary PHB : PHK : PLB and PLB in order to correctly access the tables.
Yuzu From older version: PIXI v1.2.1 - Sprite Insertion Tool
Edit: Solved a bug with the Lastest of Powerups v3.0.4 without Defs but inserting without problems
Klug From older version: PIXI v1.2.1 - Sprite Insertion Tool
And what about the Display features? Is it fixed yet?
Kiatus From older version: PIXI v1.2.1 - Sprite Insertion Tool
I'm going to port everything of my rom to a new one because i had a very old version of pixi. But yeah, i hope this version has no problem with "broken" cluster sprites.
From older version: PIXI v1.2.1 - Sprite Insertion Tool
The only thing that has changed is a single sub-routine, so I think it should be no problem. Make sure to backup your ROM before you try it.
TheOrangeToad From older version: PIXI v1.2.1 - Sprite Insertion Tool
can i use PIXI 1.2.1 with my rom that has PIXI 1.2 in it.

Test it if work or not?
From older version: PIXI v1.2.1 - Sprite Insertion Tool
No code changes to the application itself were made between 1.2 and 1.2.1, so sure, if you use the old version, it will behave just like version 1.2. Is there a good reason to do that? (Something broken with the new version?)
TheOrangeToad From older version: PIXI v1.2.1 - Sprite Insertion Tool
Can i use the old PIXI 1.2 version of suboffscreen.asm and replace the PIXI 1.2.1 version of Suboffscreen.asm?
From older version: PIXI v1.2.1 - Sprite Insertion Tool
Mod's note: made some minor adjustments and bumped to version 1.2.1. Changes are listed in changelog.txt.
zacmario From older version: PIXI v1.2.1 - Sprite Insertion Tool
I can't not get my custom sprites displayed in lunar magic! This is driving me fucking insane! Why won't they show!
Mariofan64 From older version: PIXI v1.2.1 - Sprite Insertion Tool
awesome
From older version: PIXI v1.2.1 - Sprite Insertion Tool
The display features barely work:
- I assume the 8x8 Tile Selector would allow me to make my custom map16 tiles, but I can do nothing in it.
- Changing to 8x8 mode in both windows still only pastes 16x16 tiles, and no, I can't remove one by one, I can only remove the 4 or nothing.
- Who should I pray for this to save?
- You can't use the mousewheel to scroll.
-

with all due honesty never touch this again unless you plan to stick around, be responsive to the bug reports and keep up with our own progress in the pixi fork.
MarcStar Hacks From older version: PIXI v1.2.1 - Sprite Insertion Tool
TheOrangeToad From older version: PIXI v1.2.1 - Sprite Insertion Tool
can you give me a image of the run the tool via command line?
TheBiob From older version: PIXI v1.2.1 - Sprite Insertion Tool
You need to run the tool via command line if you want to disable them.

Code
`pixi.exe -npl <rom name>`
TheOrangeToad From older version: PIXI v1.2.1 - Sprite Insertion Tool
I can't find the way to disable per-level sprites insertion?
From older version: PIXI v1.2.1 - Sprite Insertion Tool
This version adds an option to disable per-level sprites insertion, which fixes the softlock. The option is not enabled by default, so running PIXI normally will not fix anything.

Potential resolutions (rather, workarounds) have been found and are being tested for inclusion in an unofficial future version of PIXI.
TheOrangeToad From older version: PIXI v1.2.1 - Sprite Insertion Tool
Version 1.2 still has the softlock.
Mogu94 From older version: PIXI v1.2.1 - Sprite Insertion Tool
Been looking forward to this.
Konata Izumi From older version: PIXI v1.2.1 - Sprite Insertion Tool
custom appearance support? O_O
besides that, what else, and is the softlock bug fixed?
HammerBrother From older version: PIXI v1.1 - Sprite Insertion Tool
Also I forgot to mention, when you’re using any of the provided sprites, you may have to edit it’s code in order to prevent sub label issues with the macro. I’ve mentioned earlier that labels (including the +/- labels) leaks outs (as in, treating labels inside the macro as if they’re outside where it’s called) and cause problems.
TheBiob From older version: PIXI v1.1 - Sprite Insertion Tool
Quote
Edit: Now, I try this version, and I get a lot of errors:

The sprite was made for trasm, check if it has been remoderated in the sprites section.
If so you're good to go if you download the remoderated sprite.
If not you'll have to try and use trashkas (Included in "asm/Converter Tools" and see if that can convert the sprite correctly.
If that does not work you're probably better of asking for help directly or waiting for it to get remoderated.

As for the mushroom sprite it might be using some stuff that asar doesn't like but xkas allows.
First step applies to this as well but if it hasn't been remoderated you probably don't want to convert it if it doesn't throw errors as that will cause it to definitely break.
Lespna1 From older version: PIXI v1.1 - Sprite Insertion Tool
Okay, I put it in F:\OLD Drive\pixi v1.1, but do I have to move the original sprites from the old folder to the new folder?

I tried both versions, but I deleted your version and then uploaded this version. So I need both versions for it to work?

Edit: Okay, after about two or three hours of copying and pasting the files like it said, I think it worked, but I inserted the sprites, and I have the mushroom that gives you more time so when I collect it, the screen just like blinks and turns blank and the music plays in the background. Am I missing something? It worked fine for the SMW2 soldiers that walk and run around in the castles, but I don't know what is wrong w/the mushroom sprite. People were being overcritcal saying that it played the halfway point sound so I don't know if that might have something to do w/it. That wasn't my fault.
TheBiob From older version: PIXI v1.1 - Sprite Insertion Tool
Are you talking about my version or the original?
If you're talking about my version then it only contains the modified files so you still need to download the actual tool and replace the files.

If you downloaded the original tool then make sure to put it in it's own folder to not mess with other tools that might be using a different version of asar.dll
Lespna1 From older version: PIXI v1.1 - Sprite Insertion Tool
I d/loaded the version in the hyperlink below, and I get the following error:

Edit: Now, I try this version, and I get a lot of errors:

18 Shared routines registered in "routines/"
An error has been detected:
sprites/birdo.asm:16: error: Unknown command. [TILEMAP dcb \$8E,\$AE,\$8E,\$EE,\$CE,\$AE]
sprites/birdo.asm:17: error: Unknown command. [VERT_DISP dcb \$F0,\$00,\$F0,\$00,\$F0,\$00]
sprites/birdo.asm:18: error: Unknown command. [PROPERTIES dcb \$40,\$00]
sprites/birdo.asm:25: error: Invalid number. [dcb "INIT"]
sprites/birdo.asm:48: error: Invalid number. [dcb "MAIN"]
sprites/birdo.asm:49: error: Unknown command. [HAMMER_BRO_JSL PHB]
sprites/birdo.asm:64: error: Unknown command. [DEC RAM_ThrowTimer,x]
sprites/birdo.asm:72: error: Unknown command. [X_SPEED dcb \$00,\$F8,\$00,\$08]
sprites/birdo.asm:73: error: Unknown command. [TIME_IN_POS dcb \$50,\$20,\$50,\$20]
sprites/birdo.asm:75: error: Unknown command. [RETURN RTS]
sprites/birdo.asm:76: error: Unknown command. [START_HB_CODE JSR SUB_GET_DIR]
sprites/birdo.asm:98: error: Unknown command. [LABEL3 STA \$1602,x]

More errors too.
TheBiob From older version: PIXI v1.1 - Sprite Insertion Tool
That sounds like the problem mentioned one comment below. Did you try the version linked there?
KBY30 From older version: PIXI v1.1 - Sprite Insertion Tool
So, PIXI freezes when I try to insert any sprites at all.
It just says this, and then hangs.

line: 00:00
num: 0, ex: 0, char: :
line: 00:00
num: 0, ex: 0, char: :
line: 1
num: 1, ex: 0, char: F
18 Shared routines registered in "routines/"
From older version: PIXI v1.1 - Sprite Insertion Tool
That's the freedata align bug, an issue with Asar which causes PIXI to softlock when trying to insert per-level sprites. If you don't need per-level sprites, you can use TheBiob's modified PIXI which doesn't have the crash bug (at the price of not supporting per-level sprites).
Amomario123w From older version: PIXI v1.1 - Sprite Insertion Tool
whats up when pixi wont aplied the sprites just stay stanby and dont say aplied succesfully. just stay standby
how can i fix it
mish1 From older version: PIXI v1.1 - Sprite Insertion Tool
+FedoraFriday

Where did you put Pixi, for me it seems to work just fine.
gohkenytp111 From older version: PIXI v1.1 - Sprite Insertion Tool
I think that mikeyk's custom sprites aren't compatible with PIXI. Can you fix it for us please?
TheOrangeToad From older version: PIXI v1.1 - Sprite Insertion Tool
Is This Tool is compatible with Asar v1.50?
FedoraFriday From older version: PIXI v1.1 - Sprite Insertion Tool
Does this not work with addmusick? I've tried it multiple times, and the program executes but freezes right before completion. If its not addmusic, idk what it is. I can apply it to a fresh rom just fine, but applying sprites to my current one just doesnt work.
DAA234 From older version: PIXI v1.1 - Sprite Insertion Tool
good job
Fostelif From older version: PIXI v1.1 - Sprite Insertion Tool
The tweaked sprites that come with the program don't come with their graphics.
From older version: PIXI v1.1 - Sprite Insertion Tool
NOTE: Fixed a couple of bugs in different ASM files, so if you downloaded the tool while it was still waiting for moderation, please redownload before doing anything else.
From older version: PIXI v1.1 - Sprite Insertion Tool
I'll just leave a warning here. The cluster sprite support that this new version of PIXI comes with is incompatible with the Extended NMSTL patch, and using PIXI will massively break your ROM if you've previously applied the patch.

This is surprisingly easy to fix. I haven't tested it with custom cluster sprites, but it should work. First, comment out lines 123-125 and 265-273 from extendnstl.asm. Go to the end of the file and add a new line which says print "GetExtOAMIndex: \$",hex(GetExtOAMIndex). Apply the patch and write down the offset it gives you.

After that, go into PIXI's asm/cluster.asm. If you've previously applied extendnstl.asm, remove the autoclean from line 14. Find line 37 (BEQ .return) and, on a new line after it, put PHA : JSL \$xxxxxx : PLA. Replace \$xxxxxx with the offset you wrote down earlier. Now PIXI won't break the graphics of cluster sprites or nuke your ROM. You should change the offset in asm/cluster.asm every time you reapply extendnstl.asm to make sure it doesn't change (I could make it read it from the ROM, but I'm too lazy).
HammerBrother From older version: PIXI v1.1 - Sprite Insertion Tool
uh, I tested by inserting 1 sprite on id=#\$00 on donut lift sprite and even weirder stuff happened:
Code
```line: 1
num: 1, ex: 0, char: F
18 Shared routines registered in "routines/"
An error has been detected:
sprites/donut_lift.asm:85: error: Label "SubOffScreen_return" redefined [.return]
routines/SubOffScreen.asm:26 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -147) [BNE .return]
routines/SubOffScreen.asm:49 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -192) [BPL .return]
routines/SubOffScreen.asm:68 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -226) [BNE .return]
routines/SubOffScreen.asm:71 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -231) [BCS .return]
routines/SubOffScreen.asm:100 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -289) [BPL .return]```

Yes, thats an asar bug with having a %Macro() in between main label and sublabel(s), but whats with the underline part?

(PS: Really REALLY REALLY hope asar had this macro issue resolved, having sublabels are not only used to prevent redefined errors, but also keeps the code structure (viewed by a programmer) organized). Using + and - doesn't help much on telling a code its purpose.

mod edit: stop stretching tables
HammerBrother From older version: PIXI - Sprite Insertion Tool
Major problem:
1) I put this in list.txt: 00 donut_lift.cfg. I only put that sprite in and no other sprites for testing to see if it successfully inserts.

2) I run the exe file and put the ROM on it to insert. It spits out an error on my face:
Code
```15 Shared routines registered in "routines/"
An error has been detected:
sprites/donut_lift.asm:85: error: Label "SubOffScreen_return" redefined [.return]
routines/SubOffScreen.asm:26 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -147) [BNE .return]
routines/SubOffScreen.asm:49 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -192) [BPL .return]
routines/SubOffScreen.asm:65 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -223) [BNE .return]
routines/SubOffScreen.asm:68 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -228) [BCS .return]
routines/SubOffScreen.asm:97 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -286) [BPL .return]```

Don't tell me that this is like GPS's sublabel problem/glitch, where if you use a .sublabel before a %CallSubroutine() whatever label inside CallSubroutine.asm is assumed present in the file that calls the sublabel causing it to error out saying no parent or redefined:

Code
```MainLabel:
%CallSubroutine()	;>Whatever labels in this subroutine is assumed to be here rather than exclusively inside this.
.Sublabel```

Edit: blame asar for this buggy macro.
Aurel509 From older version: PIXI - Sprite Insertion Tool
Bug with this tool
When I insert some sprites in a ROM with SA-1.
The basic shooters (Bullet Bill (C9) and Torpedo Launcher (CA)) doesn't work after the insertion.
From older version: PIXI - Sprite Insertion Tool
@Gi Manilla: Sprites have yet to be converted. After the remoderation, though, sprites will support SA-1.
From older version: PIXI - Sprite Insertion Tool
Do I have to use the sprite converter to SA-1, or does PIXI automatically detect the sprite? What about clusters?
Klug From older version: PIXI - Sprite Insertion Tool
Originally posted by TheJuanCarlos64
I tested on my Windows XP and Doesn't work with the "CFG Editor GUI"

Sorry! We don't allow you to use the tool while on an outdated version of Windows. (Curse you, Windows XP!!!)
Yuzu From older version: PIXI - Sprite Insertion Tool
Why!

I tested on my Windows XP and Doesn't work with the "CFG Editor GUI"
and Tested with Windows 7 or Higher but It works Fine

I can fix This!

lion From older version: PIXI - Sprite Insertion Tool
Originally posted by Dan
Oh noooo! First there's BPS, now there's PIXI?!

God damn it people, it's not the end of the world.

it's just one dude

Originally posted by TheJullasicFox
Yeah... but my rom can't even handle GPS or ASMtool. And also, I don't feel like reinserting everything.

First, >ASMtool
Second, how old is your hack if it cant handle gps
Third,
Originally posted by The description
Despite this, it is almost fully compatible with sprites written for older SpriteTools, save for the fact that Asar is now used as the assembler.
TheJullasicFox From older version: PIXI - Sprite Insertion Tool
Yeah... but my rom can't even handle GPS or ASMtool. And also, I don't feel like reinserting everything.
From older version: PIXI - Sprite Insertion Tool
Oh noooo! First there's BPS, now there's PIXI?!

God damn it people, it's not the end of the world.
From older version: PIXI - Sprite Insertion Tool
what
TheJullasicFox From older version: PIXI - Sprite Insertion Tool
NOOOOO!!! It got accepted... Now they're only going to be these PIXI sprites... I'm going to have to delete all my sprite tool sprites? PLEASE NO SMWC... PLEASE NO!!!
leod From older version: PIXI - Sprite Insertion Tool
Very likely.
If no bugs are found in this tool, there will be no need for Romi's any more.
TheOrangeToad From older version: PIXI - Sprite Insertion Tool
Is this mean that the Romi sprite tool going to be replace.