Ideas/Things to add to Mari0

General Mar0 discussion has been moved to this subforum!
Revan XVII
Posts: 48
Joined: 29 Apr 2014, 17:51

Post » 01 May 2014, 06:24

Custom Bosses, I personally would add Wario (sml2 6gc) Wart, birdo, and maybe king boo for my luigi's mansion area.

More weapons for mario that don't actually kill enemies kinda like wario land 3, like gravity control switches like on Crazy Gadget at the end of SA2B, or a boo's sheet to make mario transparent

Custom characters: Super Mario Advance Luigi with a monicle and the black top hat, only have one thing to say, "A fine day for mayorin' if I do say so myself!"

Custom Hats: Really REALLY want to make boba fett's helmet

Working doors like in super mario bros 2.

User avatar
Qwerbey
Posts: 1280
Joined: 05 Oct 2012, 07:58
Contact:

Post » 01 May 2014, 07:13

Theoretically possible with custom enemies.
I don't actually have anything to say about this.
You could always make it yourself.
It's an undocumented feature. viewtopic.php?f=8&t=4078
It's already been suggested, so I doubt it'll make it in.

User avatar
tavuntu
Posts: 2
Joined: 02 May 2014, 07:29

Post » 02 May 2014, 07:34

This one, please!
Image

User avatar
Automatik
Posts: 1073
Joined: 20 Jul 2012, 17:54
Contact:

Post » 02 May 2014, 13:45

It's already implemented(Though I don't know if Maurice implemented my fixes)
There is just no button to activate it.
Actually, that gif you're showing come from the dev himself.

User avatar
tavuntu
Posts: 2
Joined: 02 May 2014, 07:29

Post » 03 May 2014, 01:16

Automatik wrote:It's already implemented(Though I don't know if Maurice implemented my fixes)
There is just no button to activate it.
Actually, that gif you're showing come from the dev himself.
Great! I'm going to play it now! Thanks :)

User avatar
Tecminer
Posts: 437
Joined: 11 Jan 2014, 20:44
Contact:

Post » 03 May 2014, 18:22

I think something similar to alesan99's tile tool should be added, but the tiles should all be shown to be selected, because i think having to count each tile to get its number is a bit annoying.

User avatar
eraykaan
Posts: 144
Joined: 12 Feb 2012, 15:54

Post » 03 May 2014, 20:44

A portal gun... Oh wait...

Wilo
Posts: 944
Joined: 14 Feb 2013, 06:36

Post » 03 May 2014, 21:05

Tecminer wrote:I think something similar to alesan99's tile tool should be added, but the tiles should all be shown to be selected, because i think having to count each tile to get its number is a bit annoying.
I second this. Maps like Dimentions are very annoying to make, for example.

User avatar
SauloFX
Posts: 556
Joined: 26 Feb 2014, 02:52

Post » 04 May 2014, 00:45

I don't know if we have the following things in Mari0, but i will suggest anyways:

Make Ridable Enemies:

"ridable" = It would make the enemy act like a sort of yoshi, it would stand on the same place and not harm the player, and we could make some functions to this enemy:

"flies" = We can fly around with him, up, down, left and right.

"shoots" = it makes the enemy shoot a certain projectile, the projectile need to have the following name: <enemy name>projectile.png
and another option if the enemy is able to shot is choose: "singleshot","doubleshot","tripleshot"

"breakblocks" = makes the enemy break the block when running, when walking, it do damage to enemies only

"walkonspikes" = it makes the enemy walk on the spikes



That's all i have to suggest for now.

User avatar
alesan99
Posts: 2335
Joined: 30 May 2013, 21:42
Contact:

Post » 04 May 2014, 03:28

I probably won't add ridable enemies.
I'm capable of making them but it's too much trouble.

User avatar
Smear-Gel
Posts: 297
Joined: 23 Oct 2012, 18:49

Post » 05 May 2014, 15:09

I'm certain I've already seen people make rideable enemies.

User avatar
alesan99
Posts: 2335
Joined: 30 May 2013, 21:42
Contact:

Post » 05 May 2014, 22:51

Smear-Gel wrote:I'm certain I've already seen people make rideable enemies.
He means ridable entities like yoshi.

User avatar
gemwrecker
Posts: 200
Joined: 16 Jun 2013, 22:30
Contact:

Post » 06 May 2014, 16:31

A small thing to add to enemies: Kill on contact with a portal projectile.
Would be useful for an idea I got.

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 06 May 2014, 17:50

QwertymanO07 wrote:I'm not sure this is actually possible, but a property for enemies to let them have a power output like boxes would be awesome.
ANYTHING IS POSSIBLE
IT MIGHT JUST TAKE REWRITING HALF THE ENGINE
BUT ITS POSSIBLE
Also, gem, killoncontact:entityname would be more flexible. Don't let the goomba touch the gel projectiles.

User avatar
gemwrecker
Posts: 200
Joined: 16 Jun 2013, 22:30
Contact:

Post » 06 May 2014, 18:12

bubba_nate wrote:Also, gem, killoncontact:entityname would be more flexible. Don't let the goomba touch the gel projectiles.
Alright, thanks! I'm going to start working, then!

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 06 May 2014, 20:50

What?
I was suggesting a change to your suggestion.

User avatar
HowToEatGirafes
Posts: 516
Joined: 05 Feb 2014, 23:18
Contact:

Post » 06 May 2014, 22:37

SauloFX wrote:I don't know if we have the following things in Mari0
"walkonspikes" = it makes the enemy walk on the spikes
I'm not sure but there's a command like "deathbyspikes" or something like this .

User avatar
Tecminer
Posts: 437
Joined: 11 Jan 2014, 20:44
Contact:

Post » 07 May 2014, 15:53

"resistsspikes": true

User avatar
gemwrecker
Posts: 200
Joined: 16 Jun 2013, 22:30
Contact:

Post » 07 May 2014, 18:30

bubba_nate wrote:What?
I was suggesting a change to your suggestion.
Realized that now. It didn't work.

User avatar
HansAgain
Posts: 1111
Joined: 03 Feb 2012, 18:51
Contact:

Post » 07 May 2014, 23:51

Alesan, can you add a property to make the enemies not collide with Mario?
Also, can enemies block lasers and light bridges? if not, please make it possible.

User avatar
alesan99
Posts: 2335
Joined: 30 May 2013, 21:42
Contact:

Post » 07 May 2014, 23:59

Hans1998 wrote:Alesan, can you add a property to make the enemies not collide with Mario?
With "mask" you can select what the enemy collides with and doesn't.

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 08 May 2014, 01:48

It's very confusing, though.
Each mask-layer is tied to a NORMAL thing, E. G. a goomba, koopa or hammer.
True means it's masked AGAINST colliding like that. It's like two paint cans trying to paint each other, where they both have to NOT have masking tape on them.
If you aren't using any normal enemies, you can use them for anything unless they're related to mario or tiles or something completely neccecary. (Mario himself, the world, fireballs...)
Hope I helped anyone who didn't know what alesan was talking about.
Also, if the list isn't long enough, it'll (I think) use the last thing (so if thing X is last on the list but thing Y needs to be assigned and it's not, it uses X's property.).
So collide with everything is [false] and collide with nothing is [true] because they all say "okay what's the last one since there isn't one for me in particular oh its true I collide with nothing"
Last edited by Sunset_Moth on 13 May 2014, 22:02, edited 1 time in total.

Maurice
Stabyourself.net
Posts: 2145
Joined: 01 Feb 2012, 20:19

Post » 08 May 2014, 10:00

bubba_nate wrote:It's very confusing, though.
Each layer is tied to a NORMAL thing, E. G. a goomba, koopa or hammer.
True means it's masked AGAINST colliding like that. It's like two paint cans trying to paint each other, where they both have to NOT have masking tape on them.
If you aren't using any normal enemies, you can use them for anything unless they're related to mario or tiles or something completely neccecary. (Mario himself, the world, fireballs...)
Hope I helped anyone who didn't know what alesan was talking about.
Also, if the list isn't long enough, it'll (I think) use the last thing (so if thing X is last on the list but thing Y needs to be assigned and it's not, it uses X's property.).
So collide with everything is [false] and collide with nothing is [true] because they all say "okay what's the last one since there isn't one for me in particular oh its true I collide with nothing"
I didn't understand a word you just said, but mask works after the box2d model: http://leafo.net/love/wiki/fixture_setmask.html

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 09 May 2014, 01:13

I was explaining it in non-technical terms.

User avatar
Automatik
Posts: 1073
Joined: 20 Jul 2012, 17:54
Contact:

Post » 09 May 2014, 22:08

Well you're not really using the right terms.("layers?")

Here's my try on it :
masks is a variable that control what kind of object your enemy can't touch.
It's a list of booleans(a value that's either true or false) where each say if this enemy can't touch X.

Code: Select all

 "mask":[true,false,true,false,false,true] 
So for example, if the 4rth element(which correspond to goombas) of the mask list is "true", then the enemy can't touch goombas.

Code: Select all

"mask":[false,false,false,true] 
An exception is the 1st element of the list. That 1st element represent "everything". So if it's true, the enemy can't touch anything. And it override everything, so if the 1st element is true and the 4rth element is false, the object can't touch goombas(and can't touch anything else).
"mask":[true,false,false,false] [/code]

Also note that you can omit latter elements, it will count as false.(Like I did)
There is 31 categories, including the "everything" one.

Code: Select all

1.*ALWAYS NOT COLLIDE*
2.WORLD
3.MARIO
4.GOOMBA
5.KOOPA
6.MUSHROOM/ONEUP/FLOWER/STAR
7.GEL DISPENSER
8.GEL
9.BOX
10.SCREENBOUNDARIES
11.BULLETBILL
12.PORTALWALLS
13.FIREBALLS
14.HAMMERS
15.PLATFORMS/SEESAWS
16.BOWSER
17.FIRE
18.VINE
19.SPRING
20.HAMMERBROS
21.LAKITO
22.BUTTON --Not used anymore
23.CASTLEFIRE
24.CHEEP
25.DOOR
26.FAITHPLATE
27.FLYINGFISH
28.LIGHTBRIDGE
29.PLANT
30.SQUID
31.UPFIRE

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 13 May 2014, 22:01

Automatik wrote:Well you're not really using the right terms.("layers?")
Each of those things there is in a layer of collision.
I can use that term for it if Algodoo, a physics simulator, can.

User avatar
Tecminer
Posts: 437
Joined: 11 Jan 2014, 20:44
Contact:

Post » 14 May 2014, 18:17

I think there should be the ability to give tiles custom collisions, where you should make another image, similar to tiles.png where you can draw the hitboxes of each tile and the transparent pixels dont have any collision

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 14 May 2014, 20:06

I think you should just use Mari0+portal for that...
Though it could be cool.

User avatar
falconsblack
Posts: 24
Joined: 13 Apr 2012, 18:48

Post » 23 May 2014, 01:38

animated backgrounds would be nice.

User avatar
Sunset_Moth
Posts: 781
Joined: 02 Sep 2012, 23:22
Contact:

Post » 24 May 2014, 18:47

I know think you can do that.
I forget how, but someone has done it.
Animations, I think.

User avatar
Tecminer
Posts: 437
Joined: 11 Jan 2014, 20:44
Contact:

Post » 08 Jun 2014, 11:12

The ability to change backgrounds with animations would be helpful

User avatar
Villager103
Posts: 506
Joined: 31 Jan 2013, 14:50
Contact:

Post » 08 Jun 2014, 21:19

The ability to make custom characters in-game. Also, High Energy Pellets!

User avatar
HansAgain
Posts: 1111
Joined: 03 Feb 2012, 18:51
Contact:

Post » 09 Jun 2014, 00:57

Villager103 wrote:The ability to make custom characters in-game.
Image
Maybe you don't know how complex can be some image editing programs, and how hard is making something like that in Löve.

Villager103 wrote: Also, High Energy Pellets!
I don't see anything wrong with this suggestion, i know you can do them using custom enemies, but energy pellets should be a default entity.

User avatar
Turtle95
Posts: 1246
Joined: 21 Mar 2012, 21:48
Contact:

Post » 09 Jun 2014, 05:10

Hans1998 wrote:
Villager103 wrote:The ability to make custom characters in-game.
Image
Maybe you don't know how complex can be some image editing programs, and how hard is making something like that in Löve.

Villager103 wrote: Also, High Energy Pellets!
I don't see anything wrong with this suggestion, i know you can do them using custom enemies, but energy pellets should be a default entity.
Nice gif. Anyway HEP entities would also need a catcher and launcher entity. HEP can be solo (rightclick to change direction) but spawned via launcher or box dropper too. If scaffolds were fixed to be more like this then that would be great. Also the flip panels should be kept because Portal entities.

EDIT:

Perhaps a way to detect portals on a surface (Portal 1 OR 2, and its direction) because that would be cool to make puzzles based around that.

User avatar
TurretBot
Posts: 4412
Joined: 15 Mar 2012, 23:18
Contact:

Post » 09 Jun 2014, 21:39

I think you can do the scaffold thing with tiles, though having it stop after reaching its destination is a pretty good idea; It happens in Mario games as well, I believe.

User avatar
Superjustinbros
Posts: 2119
Joined: 29 Mar 2012, 20:39
Contact:

Post » 10 Jun 2014, 03:31

Here's one I have in regards to game crashes.
If the very first screen of a certain mappack crashes the game due to something placed in said first screen of the mappack (i.e. it crashes on the StabYourself logo), it auto-loads the SMB1 mappack on the next boot up, and until it is edited, displays the mappack that caused the crash to be outlined red instead of black on the mappack selection screen, showing a "risky" mappack that caused the previous crash(es).

User avatar
4matsy
Posts: 80
Joined: 04 Mar 2012, 18:34

Post » 10 Jun 2014, 04:37

Superjustinbros wrote:Here's one I have in regards to game crashes.
If the very first screen of a certain mappack crashes the game due to something placed in said first screen of the mappack (i.e. it crashes on the StabYourself logo), it auto-loads the SMB1 mappack on the next boot up, and until it is edited, displays the mappack that caused the crash to be outlined red instead of black on the mappack selection screen, showing a "risky" mappack that caused the previous crash(es).
Seconding this. Maybe make a message display to the right in red text saying "instant crash when previously used - first screen should be fixed using the proper mod".

User avatar
Superjustinbros
Posts: 2119
Joined: 29 Mar 2012, 20:39
Contact:

Post » 10 Jun 2014, 15:47

It's sad with how even the smallest of things can make Mari0 implode on itself. I made a similar suggestion a while ago dealing with custom enemies, so if something in an enemy was misnamed or programmed incorrectly, it just shows an error graphic over the enemy instead of terminating Mari0 entirely.

Sometimes trying to find the source of a crash through an error screen doesn't work, as the portion that would list what cashed the game is offscreen below the visible portion of the crash log.

User avatar
Turtle95
Posts: 1246
Joined: 21 Mar 2012, 21:48
Contact:

Post » 10 Jun 2014, 16:48

Superjustinbros wrote:It's sad with how even the smallest of things can make Mari0 implode on itself. I made a similar suggestion a while ago dealing with custom enemies, so if something in an enemy was misnamed or programmed incorrectly, it just shows an error graphic over the enemy instead of terminating Mari0 entirely.

Sometimes trying to find the source of a crash through an error screen doesn't work, as the portion that would list what cashed the game is offscreen below the visible portion of the crash log.
The latter could be solved by making error_log#.txt with the crash data inside of it. This way if the error goes offscreen as you say, then you can send Maurice that instead.

User avatar
TurretBot
Posts: 4412
Joined: 15 Mar 2012, 23:18
Contact:

Post » 10 Jun 2014, 21:15

I remember suggesting it be printed onto the the console. (Not only for this, though; On Size 1, you can barely read it at all.)

User avatar
Automatik
Posts: 1073
Joined: 20 Jul 2012, 17:54
Contact:

Post » 10 Jun 2014, 21:46

Superjustinbros wrote:Here's one I have in regards to game crashes.
If the very first screen of a certain mappack crashes the game due to something placed in said first screen of the mappack (i.e. it crashes on the StabYourself logo), it auto-loads the SMB1 mappack on the next boot up, and until it is edited, displays the mappack that caused the crash to be outlined red instead of black on the mappack selection screen, showing a "risky" mappack that caused the previous crash(es).
Or it could just not crash the game when you load a mappack. I think Maurice said he wanted to use "pcall()" when loading a mappack title-screen so that it don't crash if the mappack is corrupted.
Also, most of the time, when someone's Mari0 refuse to load because of a "broken" mappack, It seem to be because it use a mod that add entities, and Vanilla Mari0 throw an error if the first level has a unknown entity (While it look for mario's start point). I'm sure that if this alone was fixed, we would see way less "help my mari0 is broken and I can't fix it" posts here.
Superjustinbros wrote: Sometimes trying to find the source of a crash through an error screen doesn't work, as the portion that would list what cashed the game is offscreen below the visible portion of the crash log.
The error handler could resize the window if it's too small. And a button to copy the error log into the clipboard. (Concerned Joe does it.) Also löve 0.9.1 has a "love.system.openURL(url)" function so Maurice could add another button that open (love.system.openURL("mailto:crash @stabyourself.net"))

User avatar
MagicPillow
Posts: 1108
Joined: 20 Jul 2013, 04:59
Contact:

Post » 10 Jun 2014, 22:03

You know what could fix the crashing glitch of mappacks?
If every mappack had a title screen that would load when you first start it, and then go to the first level.
Then it wouldn't crash if the first level was corrupt.

User avatar
Automatik
Posts: 1073
Joined: 20 Jul 2012, 17:54
Contact:

Post » 11 Jun 2014, 12:46

So basically, every mappack author has to manually make a title screen(that may be corrupt)? Custom title-screens are a cool idea, but it shouldn't be a replacement for bug-fixing.
I think my solution is better because it's not a workaround, and it fix the problem itself.
For the "unknown entity" crashes, you need to change ONE line in 1.6.

Also, Mari0 SE is already more or less protected against corrupted mappacks (I just checked) :

Code: Select all

function loadbackgroundsafe(background)
	if loadbackground(background) == false then
		map = {}
		coinmap = {}
		mapwidth = width
		for x = 1, width do
			map[x] = {}
			coinmap[x] = {}
			for y = 1, 13 do
				map[x][y] = {1}
			end
		
			for y = 14, 15 do
				map[x][y] = {2}
			end
		end
		mapheight = 15
		startx = {3, 3, 3, 3, 3}
		starty = {13, 13, 13, 13, 13}
		custombackground = false
		backgroundi = 1
		love.graphics.setBackgroundColor(backgroundcolor[backgroundi])
		notice.new("Couldn't properly load|background " .. background .. "!", notice.red)
		
		xscroll = 0
		yscroll = 0
		
		smbspritebatch = love.graphics.newSpriteBatch( smbtilesimg, 10000 )
		smbspritebatchfront = love.graphics.newSpriteBatch( smbtilesimg, 10000 )
		portalspritebatch = love.graphics.newSpriteBatch( portaltilesimg, 10000 )
		portalspritebatchfront = love.graphics.newSpriteBatch( portaltilesimg, 10000 )
	end
	
	generatespritebatch()
end
Every place who previously called loadbackground() now call loadbackgroundsafe() That function will call loadbackground() and check if it succeeded. If it didn't, It create a blank placeholder map. It don't show a error message when it fail to load the level and it don't call loadbackground using "pcall()" so it can theorically crash, but it's a start.

in "loadmap()", game.lua (A function called by loadbackground)

Code: Select all

			
			if #r > 1 then 
				if entitylist[r[2]] then
					local t = entitylist[r[2]].t
					
					if t == "spawn" then
						local r2 = {unpack(r)}
See that "if entitylist[r[2]] then" bit? It check if the entity already exist before checking what type of entity it is. So in SE, that bug is fixed and shouldn't happen again.

User avatar
Firaga
Posts: 931
Joined: 02 Jul 2012, 16:05
Contact:

Post » 13 Jun 2014, 23:05

I'd like to see some things get done with the Enemies .json files.

pickUp: Picks up an enemy as you would do a cube.
killMorph: When this entity is killed, it will do the same as a tile triggered by a button. This way we can make p-switches easily.

User avatar
Danny
Posts: 207
Joined: 26 Oct 2013, 05:22

Post » 20 Jun 2014, 20:37

a custom sound folder in mappacks (so you can change fireball sound, or coinblock, ect.)
a forum specifically for SE so we dont have to sift through 1.6 stuff
hotkeys, to make level editor easier or cheats more accessible
a quicker way to place entities in editor (placing each individual gel takes FOREVER)
more portal entities (turrets, cores, glados, redirection cube, ect.)
and maybe enemies that can shoot portals (if that's to hard i completely understand)

User avatar
Danny
Posts: 207
Joined: 26 Oct 2013, 05:22

Post » 20 Jun 2014, 20:56

Image
Image

here are atlas and pbody sprites i made based off http://thisistheverge.tumblr.com/post/2 ... dy-the-two
can someone pleeeeeeease make these into characters? i would do it myself but im not good at config text stuff
Last edited by Danny on 20 Jun 2014, 22:24, edited 1 time in total.

User avatar
Firaga
Posts: 931
Joined: 02 Jul 2012, 16:05
Contact:

Post » 20 Jun 2014, 21:05

Danny wrote:a custom sound folder in mappacks (so you can change fireball sound, or coinblock, ect.) decent idea
a forum specifically for SE so we don't have to sift through 1.6 stuff it's not a release yet, it doesn't need its own subforum
hotkeys, to make level editor easier or cheats more accessible there was at one point, F to powerup, but I'm not sure why you'd want to use cheats to test in the first place.
a quicker way to place entities in editor (placing each individual gel takes FOREVER) another decent idea
more portal entities (turrets, cores, glados, redirection cube, ect.) can me made with custom enemies, not needed, too hard to code, maurice doesn't want them
and maybe enemies that can shoot portals (if that's to hard i completely understand) no, only people with a portal gun should be able to shoot portals
Danny wrote:Image
Image

here are atlas and pbody sprites i made
can someone pleeeeeeease make these into characters?
Firstly, don't post the sprites here. This is not a "thing to add to mari0". Post them into the Custom Character Creation Library. Everyones not going to do everything for you, but this is your best bet to ask how you can make the custom character.
Second, you didn't make those sprites. Lookie here. I would credit the guy who made them instead of slightly changing the sprites and calling them yours.
Finally, don't double post. It is typically frowned upon here, with a few exceptions if a thread has been dead and you want to post an update.

User avatar
Automatik
Posts: 1073
Joined: 20 Jul 2012, 17:54
Contact:

Post » 20 Jun 2014, 22:23

Firaga wrote: hotkeys, to make level editor easier or cheats more accessible there was at one point, F to powerup, but I'm not sure why you'd want to use cheats to test in the first place.
Maybe for level editor stuff, he mean hotkeys like "e for eraser, r for entity eraser".

User avatar
Danny
Posts: 207
Joined: 26 Oct 2013, 05:22

Post » 20 Jun 2014, 22:27

precisely!

or things like
ctrl+c =copy
ctrl+p =past
ctrl +s =save
ctrl+a = select all
t = test level
V (+/-)= volume control

things like that
@Firaga, i edited the original post

User avatar
TurretBot
Posts: 4412
Joined: 15 Mar 2012, 23:18
Contact:

Post » 20 Jun 2014, 22:28

Firaga wrote:
Danny wrote:a quicker way to place entities in editor (placing each individual gel takes FOREVER) another decent idea if I may here's a clicky click
more portal entities (turrets, cores, glados, redirection cube, ect.) can me made with custom enemies, not needed, too hard to code, maurice doesn't want them although cores aren't really needed there's the obvious "different cube skins" argument that's been floating around

Post Reply