Mari0MS 1.6.2, aka Watch for Falling GLaDOS

Mods, guides how to use and install mods go right in here.
User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 09 Mar 2012, 09:18

Mari0MS 1.6.2, aka Watch for Falling GLaDOS

Table of Contents
I. Intro
II. Pictures
III. Downloads
IV. Developing
IV-a. Reference
V. Included Mods
VI. Core File Changes
VII. Installation Instructions

I. Intro

I've been following the development of Mari0 since it was just an attempt to make a Super Mario Brothers clone. After it was released, I decided that with my vast knowledge of Lua and Love, I would make an easy way to create mods. And thus, Mari0 Modding System was born.

Here's picture of a mod I made, it adds a few logic gates for more complex puzzles.

Image

II. Pictures

HAVE SOME PRETTY PICTURES

Image

Image

III. Downloads

This is currently on Mari0 1.6, Modding System 1.6.2

The Mari0 Modding System 1.6.2 can be downloaded here: MarioMS_1.6.2.zip

If something's not working, try getting the latest version.

Older Versions

1.6.1
1.4.1
1.3

IV. Developing Mods

Creating mods is relatively easy.

Every mod folder needs to contain a modmain.lua. In this file I recommend you load images and other things. The main purpose is that this is where you call RegisterObject. Doing this creates a new type of entity like the player, bullet bills, goombas, etc. This does everything you would usually need to do when creating a mod, like creating a new table in objects, adding the name to entitylist, and everything else.

As for editing the entities.png in graphics/SMB, that's no longer necessary. Instead, you just create a new entities.png inside of your mod's graphics folder. (This is where you put other graphics, as well.)

The image in the entities.png is not your entity's graphics, it's where it gets the images for the entity picker. Each 17x17 tile should be in the order of when you call RegisterObject for each new type of object.

IV-a. Reference

The functions that you can use (in addition to all the basic ones)

try(function [, errorfunction]) - Runs a function safely, if supplied it will fun errorfunction and pass it the error message
requiredir(directory [, excluded]) - requires all files in a directory in alphabetical order
LoadMods() - Loads all mods, an internal function which you don't need to call.
NewObject(entname, ent) - adds an entity to objects
GetModIndex(entname) - what index the entity's info is stored at
RegisterObject(djghgaklsdhfhdash) - Registers a new type of object, the most important function which I can't fully document right now
and much much more, coming later

V. Included Mods

Logic Gates
Personality Cores
Poison Mushrooms
"Zealous" Plates (2x as powerful as faithplates, FEEL THE FEVER) (also they launch more things for the moment)
A non-working new type of koopa
OTHER STUFF I DON'T FEEL LIKE TYPING UP

VI. Core File Changes

Multiple input links (be careful with this)
Loading Mods (duh)
Drawing mod entities (i.e. you don't have to make your own loop)
Mario Collision callbacks
Some improved/more dynamic physics
-ENTITY.pushable, can it be pushed by Mario? (like boxes and personality cores)
-ENTITY.pushesbutton, if this is true, entities trigger super colliding super buttons
OTHER STUFF I DON'T FEEL LIKE TYPING UP

VII. Installation Instructions

There are two separate pieces to this, the executable (Mari0MS_x.y.z.love) and the mods (folders full of lua files and images).

To play with mods, run the executable by either double clicking on it, or dragging it onto love.exe/a shortcut to love.exe. You need to install Love 0.8.0, which can be download from love2d.org (you don't to get it from love2d.org/builds because 0.8.0 has been released officially)

If you try to play a different version of Mari0 (e.g. the standard one from stabyourself.net), no mods will be loaded from your mods folder. The mods folder is only used by my modded version, so unless you are using a different modloader that uses the same "mods" folder, nothing will happen just from having it there.

To install a mod, you simply drop its folder into your appdata/love/mari0/mods folder, right next to mappacks. There's 99% chance it's not there already, so you'll probably have to make it.

A PICTURE TO MAKE IT EASIER:

Image
Last edited by ZenX2 on 17 Apr 2012, 02:46, edited 17 times in total.

User avatar
byrono
Posts: 118
Joined: 02 Feb 2012, 21:53

Post » 09 Mar 2012, 11:46

So this is pratically a modloader for mari0.

angal
Posts: 12
Joined: 08 Mar 2012, 22:02

Post » 09 Mar 2012, 12:12

Cool idea. (Me think about it)
Are you need any crew to help you with this? (I think it a lot of think, that can be added, so...) If yes, i would like to join your project.

Hm... And somitimes it's brake settings file...

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 09 Mar 2012, 16:27

This is really nice, I was actually about to spend today making something similar, with some minor changes to make it so that custom entities would be redistributable with maps. Job well done.

User avatar
Nilsser
Posts: 24
Joined: 08 Mar 2012, 17:16

Post » 09 Mar 2012, 16:40

mari0 is 1.4 right now it dosent work :(

TheLordKhon
Posts: 12
Joined: 06 Mar 2012, 15:31

Post » 09 Mar 2012, 16:45

Nilsser wrote:mari0 is 1.4 right now it dosent work :(
i could port but he need to allow me....

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 09 Mar 2012, 22:04

I went ahead and ported it to Mari0 1.4 so that I could get to work on some mods. Download the source here.

Although, there seems to be a problem with the "AND" gate.
Image
I linked the first AND gate to the first and second buttons, then linked the light to the AND gate.
Then I linked the second AND gate to the third button and the first AND gate, then linked the second light to the second AND gate.
When testing the controls lock up while the music plays until it stops playing music and the LUA error shows up.

I did this whole setup to try and work around a very similar error that occurs when one AND gate is supplied more than two inputs. I'm working on fixing this.

I tested and the map crashes in both my port and the original version for 1.3.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 10 Mar 2012, 01:58

Wow, thank you for updating it. That will definitely save me some time.

Just a heads up, the logic gate are only supposed to support two inputs. I'll have to add in input-limit feature.

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 10 Mar 2012, 02:12

ZenX2 wrote:Wow, thank you for updating it. That will definitely save me some time.

Just a heads up, the logic gate are only supposed to support two inputs. I'll have to add in input-limit feature.
I'm fairly aware. I'm working on modding in an input table system and I'm almost done with it, but there's a pretty weird behavior it has as it stands where something is sending it the input signal when it isn't any of the buttons linked to it.

Here's the code for logic gate, still riddled with debug code logicgate.lua and its slightly modified modmain.lua. I have a feeling it involves zero initialized arrays and lua's lack of them.

e: Honk honk, the following paragraph happened because I accidentally assigned it as an input to itself.
The code demonstrates through the console that when an example scenario of 3 buttons on 1 AND gate, that 0 is added as button 1 is pressed. 0 is then forgotten, and 2 is added as button 1 is unpressed. Button 1 is correctly mapped to input 1. Then buttons 2 and 3 are mapped to 3 and 4 respectively. A hackish way to complete this would be to make the AND gate disregard inputs 0 and 2, but even if that was done the moment button 2 or 3 is pressed the AND gate would then be perfectly content with just buttons 1 and 2 being pressed even when button 3 has never been pressed. This highlights the underlying problem that greatly complicates linking logic: entities are not aware of which or how many objects are linked to them until something happens ingame. Since maps are not dynamic they shouldn't have to figure things out in this way.

Update: I made a more functional version of the gate that accepts unlimited number of inputs but it still suffers from the basic drawback that it doesn't know how many inputs it is responsible for and takes them as they come.
Image
Here's the (potentially) corrected script that still has a bunch of debug code in it: logicgate.lua.

The problem before was that there was nothing protecting it from adding itself to its input list and my mouse misfired so that it doubleclicked on the gate while trying to link it to a button, so it created a one-time-only latch for the duration it was triggered after it became aware of its first input (and itself). Fixing that is as simple as adding " and tostring(e)~=tostring(self)" to the line where it checks "if oldinput==false" (or maybe it'd work without one/both the tostring() calls since it is receiving a tostring'd object upon the function being called) The "if[...]==false" was there because I wasn't certain if the "not" operator was working as intended.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 10 Mar 2012, 22:40

I made a mod that adds poison mushrooms from SMB2. (The ultrahard japanese one)

It's not completely accurate, as it kills you no matter what, but it's a start. Also, it says stuff

Download

Just extract and drop in your mods folder.

Image

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 11 Mar 2012, 00:04

I decided to reuse the way I made the poison mushroom talk to make some personality cores (Sprites by HeroKing)

Image

Included in 1.4.1.

Also, it's pretty easy to make your own

User avatar
Shasow
Posts: 25
Joined: 10 Mar 2012, 09:50

Post » 11 Mar 2012, 03:05

I love the cores. :D

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 11 Mar 2012, 08:49

I added the ability to have custom music, I'll probably upload that tomorrow.

User avatar
renhoek
Posts: 4545
Joined: 11 Feb 2012, 10:04

Post » 11 Mar 2012, 10:33

ZenX2 wrote:I made a mod that adds poison mushrooms from SMB2. (The ultrahard japanese one)

It's not completely accurate, as it kills you no matter what, but it's a start. Also, it says stuff

Download

Just extract and drop in your mods folder.

Image
THANK YOU!

that's what I needed for my project!
viewtopic.php?f=12&t=266
I'll be sure to credit you!

I'll have to edit the text tho.
EDIT:but I might have to make a regular version first tho,
so are you ok with me using that?

Matanuilover
Posts: 5
Joined: 11 Mar 2012, 18:21

Post » 11 Mar 2012, 19:21

Is there an easy way to install mods that are already .love files?
I figure I could just replace a lot of the lua files in the Mari0MS löve file, but I'm not sure which ones i shouldnt change.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 11 Mar 2012, 22:41

xXxrenhoekxXx wrote:
ZenX2 wrote:I made a mod that adds poison mushrooms from SMB2. (The ultrahard japanese one)

It's not completely accurate, as it kills you no matter what, but it's a start. Also, it says stuff

Download

Just extract and drop in your mods folder.

Image
THANK YOU!

that's what I needed for my project!
viewtopic.php?f=12&t=266
I'll be sure to credit you!

I'll have to edit the text tho.
EDIT:but I might have to make a regular version first tho,
so are you ok with me using that?
Please, go ahead and use it. To make it not talk, change line 7 of poisonmushroom/modmain.lua to

Code: Select all

NewObject("poisonmushroom", c:new(x-0.5, y-2/16))

User avatar
renhoek
Posts: 4545
Joined: 11 Feb 2012, 10:04

Post » 12 Mar 2012, 10:10

ZenX2 wrote: Please, go ahead and use it. To make it not talk, change line 7 of poisonmushroom/modmain.lua to

Code: Select all

NewObject("poisonmushroom", c:new(x-0.5, y-2/16))
thank you :)

User avatar
LuigiHoax
Posts: 26
Joined: 12 Feb 2012, 02:24

Post » 12 Mar 2012, 23:24

Add Intelegence Core and its cake made of non-edible items.

WanderingTedium
Posts: 40
Joined: 05 Mar 2012, 13:54

Post » 13 Mar 2012, 06:19

Awesome mods, man. I'm looking forward to incorporating them into my upcoming mappack. With said mods credited to you, of course.

Although, I won't be using all the mods. The logic gates, as useful as they are, slow my computer down a shitload even when just sitting there in my folder, so I've had to remove them. Also, for some reason the laser detectors no longer work. Hope that's something of an easy fix for you, as I've tried and came up empty.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 14 Mar 2012, 08:17

WanderingTedium wrote:Awesome mods, man. I'm looking forward to incorporating them into my upcoming mappack. With said mods credited to you, of course.

Although, I won't be using all the mods. The logic gates, as useful as they are, slow my computer down a shitload even when just sitting there in my folder, so I've had to remove them. Also, for some reason the laser detectors no longer work. Hope that's something of an easy fix for you, as I've tried and came up empty.
I noticed that they stopped working. I still need to look into it and figure out what's going on :P

Also, I've been working on triggers and other things for making more intricate maps

Image

Image

User avatar
fakeuser
Posts: 135
Joined: 04 Mar 2012, 01:20

Post » 15 Mar 2012, 01:02

I was porting my mod for your loader when I got an error message that graphics/entities.png does not exist under my mod folder. As I'm just changing a function into mario metatable, it is more than obvious I do not need any custom tiles, entities, etc. So what to do? I do not really want to add transparent 1x1 image there.

Frequenter
Posts: 3
Joined: 15 Mar 2012, 06:27

Post » 15 Mar 2012, 07:52

Mod is amazing!

One question though;

is there ANY way to use what you've made to allow two inputs into a companion cube dropping output? Whenever I link two standing/push buttons, for example, to a block dispenser, it doesn't work because the standing buttons toggle (if you press them once they stay on, if you press them again, they turn off). Is there any way to use a gate to get around this? Or, alternatively, why does this game not include a BUTTON!?! It's frustrating having to tell the user to press each button twice (effectively turning them off, and then on again, so the next button linked to the same dispenser works.)

Have I explained this at all? Sorry for it being so incomprehensible, ha.

Running latest 1.4.1, Windows 7. Just can't get it to work for the block dispenser... Can post a screenshot of what I've set up if needed. Any help would be awesome!

sullidan
Posts: 1
Joined: 15 Mar 2012, 14:26

Post » 15 Mar 2012, 14:33

The mod is great so far and I look forward to more additions and development! In particular, I really like the idea of having matching sockets for the personality cores. Also, excursion funnels would be an awesome addition to this game.

Much appreciation for your work on this mod!

Nasaghast
Posts: 1
Joined: 15 Mar 2012, 21:47

Post » 15 Mar 2012, 21:52

Hi. Im new to the LOVE coding, and I keep getting the error message "mani.lua:49: You have an outdated version of LOVE! Get 0.8.0 or higher and retry." when trying to use your mod. This doesn't make sense, I just downloaded LOVE off the website. Can anyone help me? (Its at 1.7.2)

User avatar
canI
Posts: 64
Joined: 05 Mar 2012, 17:02

Post » 15 Mar 2012, 22:38

Nasaghast wrote:Hi. Im new to the LOVE coding, and I keep getting the error message "mani.lua:49: You have an outdated version of LOVE! Get 0.8.0 or higher and retry." when trying to use your mod. This doesn't make sense, I just downloaded LOVE off the website. Can anyone help me? (Its at 1.7.2)
Get one with recent date from Here.

User avatar
Kjulo
Posts: 43
Joined: 04 Mar 2012, 22:32

Post » 16 Mar 2012, 01:28

Awesome work, it just seems that sometimes (and quite frequently) the mushroom and cores seems to spit out text so fast it overlaps the old text making it one big unreadable blob. Maybe add a minumum amount of steps or frames since last time it said something?

User avatar
rokit
Posts: 2095
Joined: 03 Feb 2012, 00:47

Post » 17 Mar 2012, 01:14

No offence, but i like lexsym's one better because you can make mods without having all these mods.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 17 Mar 2012, 03:21

Sorry about not posting in a few days, I've been busy with tests, my robotics team, and other school things.

@fakeuser: I've fixed that. You won't have to have an entities.png in the next version.

@Frequenter: Fixed in next version.

@sullidan: Thank you!

@Kjulo: Right now it just goes randomly, I'll add that in.

@rokit boy: I wont include the mods I've made in the next version, I'll make them separate downloads.

I'm developing/testing from the project's source, so having the mods inside makes it easier instead of having to have a separate thing open for them in AppData.

Edit: I'll upload the new version soon, it'll be 1.4.2 because I'm too tired to update to 1.6 today.
Also, I'm still unsure of what's up with the laser detectors.

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 17 Mar 2012, 03:34

ZenX2 wrote:Edit: I'll upload the new version soon, it'll be 1.4.2 because I'm too tired to update to 1.6 today.
Also, I'm still unsure of what's up with the laser detectors.
I'll port what you post tonight to 1.6.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 17 Mar 2012, 03:58

Okay, box dispensers and lasers are fixed. Expect the new version soon. I'll include my testing mappack (Seen in the picture above) and the mods I've made outside of the .love.

New things:
-Triggers
--Allow you to do stuff when Mario walks into them
-Wheatley Sockets (pretty much buttons that stay on and are only pressed by wheatley)
-Map-specific lua, just have an x-y.lua with your x-y.txt
-Talkity boxes. These were easier to make than I thought they would be.
-Switch entity, toggles on and off when it receives "on" or "toggle", can be made to only trigger once with the right-click menu, and there's also an invisible version. This should make story-event type stuff easier.

I've probably changed plenty in the core files, as well. I think you guys are going to have fun with this.

Edit:
EntranceJew wrote:I'll port what you post tonight to 1.6.
Thanks for the offer, but I think I can handle it. I was expecting lasers to take longer to fix.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 17 Mar 2012, 07:23

Mari0MS v1.6.1

Here's the newest version, updated to Mari0 1.6.

Since Maurice added custom music, don't use the music loading thing I made.

I added lots of stuff that allows for more story-oriented levels, so some cool things are bound to be made sooner or later.

The download: MarioMS_1.6.1.zip

Contents:
-Mari0MS_1.6.1.love, the actual mod/game
-mods, a folder full 'o mods that I've made
-sandbox, my testing map. It requires pretty much all the mods from "mods"

Have fun with this!

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 17 Mar 2012, 08:31

Small thing that is missing from this would be a handler for MarioModGlobalCollide. More as the story develops.
Edit: An unsung potential feature of level-by-level lua includes means level specific variable settings. Meaning that old bullet bill RUN map by pumping up the bullet bill limit, or making a map where gravity is straight up strange and mario runs way faster.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 17 Mar 2012, 09:48

Those are all possibilities

Also I think I messed up koopas a bit

Edit: And I forgot to update the graphics/mappacks so yeah

WanderingTedium
Posts: 40
Joined: 05 Mar 2012, 13:54

Post » 17 Mar 2012, 11:26

Koopas are messed up?

Are you having problems such as not being able to kick their shells from the left like I'm having?

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 17 Mar 2012, 12:11

Unless I'm mistaken, LoadModImage has no way to distinguish what mod is "current", even after defining it in the to-be-included.lua and/or modmain.lua. Just bringing this to your attention since it'd be a neat feature once it got working.
modding.lua LoadModImage

Code: Select all

function LoadModImage(path)
	return love.graphics.newImage("mods/"..CurrentMod.."/graphics/"..path)
end
Additionally, I patched in MarioModGlobalCollide for the sake of porting piranha plants over to this system, requiring that it returns true (in order to get the function it's nested in to return false):
mario.lua mario:globalcollide

Code: Select all

	if MarioModGlobalCollide[a] then
		if MarioModGlobalCollide[a](self, b) == false then
            return true
       end
Image1, Image2
Download red and green piranha plants and their upsidedown variants. They don't overwrite the existing piranha plants because I didn't want to bother with that just yet. Feel free to redistribute or modify whatever code I have, just be mindful that because piranha plant's default method of drawing is buried deeper in the code than its entity file I had to really hack in upside down piranhas. Sideways coming about as soon as I can rotate a quad or I find piranha plant's drawing method and send that a rotation value.
Last edited by EntranceJew on 17 Mar 2012, 13:31, edited 2 times in total.

User avatar
cloud6625
Posts: 47
Joined: 04 Mar 2012, 00:32

Post » 17 Mar 2012, 13:28

this is a great tool. im workign on a mod with it (the mod i am making goes with my mappack some people might have seen the snes tileset and mappack. its snes entitys and mario and some other edits in between)
heres progress:

entities: 100% (I believe)

mario: 35%

other stuff: 80%

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 17 Mar 2012, 16:01

As it stands, because no custom entity enemies have a firescore defined (edit: this is wrong, custom enemy entities have code fore firepoints I just missed it. The rest of the post is still relevant if you have a custom enemy mod that does not use the FirePoints mod method) The game will crash during a rainboom due to the code only considering bowser as the exception, everything else is expected to have an entry on firescores. This is the code I applied to deal with enemies not having firescores as it pertains to rainbooms:
mario.lua mario:portaled

Code: Select all

    for i, v in pairs(enemies) do
        if objects[v] then
            for j, w in pairs(objects[v]) do
                w:shotted()
                if firepoints[v]~=nil then
                    addpoints(firepoints[v], w.x, w.y)
                elseif firepoints[v]==nil then
                    addpoints(firepoints["goomba"], w.x, w.y)
                elseif v=="bowser" then
                    for i = 1, 6 do
                        w:shotted()
                    end
                end
            end
        end
    end
A better solution to this would probably be to include a simple table.insert to the respective tables, but since it relies on entity names having a hook to handle it automatically wouldn't be half bad. (edit: Disregard that, I failed to notice the FirePoints mod function.)
I was mucking about in that code because I added in pow blocks, though I can't seem to scrape the earthquake code off of the pinwheel image in the game_draw() function without reimplementing the earthquake code.
Last edited by EntranceJew on 18 Mar 2012, 13:41, edited 2 times in total.

User avatar
cloud6625
Posts: 47
Joined: 04 Mar 2012, 00:32

Post » 17 Mar 2012, 19:36

i have all the entities done. i have all the other stuff done. so now on my snes mod i will just need to make mario and i will release it some time in the next week or so

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 17 Mar 2012, 23:20

I may have forgotten to mention this, but the function FirePoints(entname, points) sets up firepoints for an entity.

CurrentMod is defined before a mod is loaded, and set to nil afterwards.

User avatar
EntranceJew
Posts: 93
Joined: 05 Mar 2012, 05:37

Post » 18 Mar 2012, 12:35

ZenX2 wrote:I may have forgotten to mention this, but the function FirePoints(entname, points) sets up firepoints for an entity.
Whoops, I somehow overlooked this even though it was clearly used in your code for the poison mushroom. I guess I shouldn't post and code while on a sleep-deprivation-induced productivity spree.

Edit: One of the mods I'm working on now requires a function that behaves similarly to the collide hook, I need some code embedded in the mario:update method to run some logic, but the problem I'm experiencing in implementing it is that there's several code-points where it might be useful to have a hook (self.animation checks, star timer checks, pre-rotation checks, post-rotation checks, even skipping the rotation check entirely) and I can't quite figure out an elegant way to solve the problem other than:
modding.lua

Code: Select all

MarioModUpdateHooks = {beginning={},animation={},star={},prerot={},postrot={},duringrot={}}
function NewMarioUpdateHook(s, f)
    table.insert(MarioModUpdateHooks[s],f)
end
And then burying a bunch of iterative checks against the associated part of the table, similar to:
mario.lua mario:update

Code: Select all

for i=1, #MarioModUpdateHooks["beginning"] do
    MarioModUpdateHooks["beginning"][i](self)
end
The same could be done for a majority of mario's functions or in the middle of standard entities. In some instances where it would have to be a part of an if condition tree it might require checking the length of the hook table for a number greater than zero. In other instances where it needs to override code branches completely, it could have two hooks: one for checking if the second should be run through checking the return value of the first while the second is simply the override code. This prevents having a case where: A mod that makes it so Mario can walk on walls and stuff needs to change the code where he gets rotated back to his standard position, but Mario isn't on a wall and he just got portaled, therefore the normal code needs to run. While the mod could implement this check themselves, it could also simply re-implement the portal code if it doesn't need to run its own specialized branch, but that would make it incompatible with any other mods that require mario rotate when he ordinarily shouldn't, like a gravity direction mod. It's more a matter of not trusting the mod authors to do things correctly.

There's a slight problem with having inter-connected mods communicate. A theoretical example of mod communication would be Mod2 having special case code if a variable only defined in Mod1 is at a certain value. That would be a product of a bigger problem of no set mod loading order, I would recommend taking an approach similar to what canI did for his hat loader, he used the dlc/mappack menu to select hats. This could be used to put a little window on the side to enable some configuration options for mods and enable modification of the mod loading order.

User avatar
Lone Wolf
Posts: 228
Joined: 05 Mar 2012, 00:41
Contact:

Post » 21 Mar 2012, 04:47

How do you make your own talky boxes like in the sandbox map?

z0mb1
Posts: 16
Joined: 17 Mar 2012, 09:17

Post » 21 Mar 2012, 10:29

Two Things...

1.) I am having the same problem that someone mentioned above, where you can't kick the Koopa shells. Just wanted to get that out there. Edit: It's more than not being able to kick the shells. The Koopas (both red and green) pass through Mario without damaging him, and so do their empty shells. They can be stomped from the top and picked off with fireballs, but their empty shells can't be kicked from either side. They just sit there like solid blocks. Jumping on top of the empty shell, however, will set it into motion. Buzzy Beetle is experiencing the same issue.

The Winged Koopas have no boundaries. They fly all over the map, with no regard for solid tiles. If you stomp one in between a solid tile and a non-solid tile (liquid or gas?) they get stuck between the two tiles.

If a Hammer Brother lands on top of Mario, it will stand on top of him like he's a brick without doing any damage to him.


2.) I reeeeeeeaaaalllly like the idea of the Talkbox mod. When I downloaded the package, though, all there was in the folder was the talkbox.lua file. There are no graphics and there is no modmain.lua.

Do these have fixes in the works?

Thanks again!

- z0mb1
Last edited by z0mb1 on 22 Mar 2012, 02:18, edited 3 times in total.

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

Post » 21 Mar 2012, 14:54

How you had done like wheatley-talking? (sorry im turkish)

User avatar
Lone Wolf
Posts: 228
Joined: 05 Mar 2012, 00:41
Contact:

Post » 21 Mar 2012, 20:55

eraykaan wrote:How you had done like wheatley-talking? (sorry im turkish)
This is EXACTLY what I would like to know, also.

z0mb1
Posts: 16
Joined: 17 Mar 2012, 09:17

Post » 22 Mar 2012, 02:45

I think I may have made some headway in the Koopa/Beetle issue, but I've hit a stopping point. I think the problem is a combination of something wrong with koopa.lua and mario.lua. Koopa.lua controls the Koopa Troopas, the Koopa Paratroopas and Buzzy Beetle. I copied koopa.lua and mario.lua out of the main Mari0 file and was able to get the Koopas and Buzzy to stabilize a little (they damaged Mario again and their shells were kickable), but then the game blued out after a couple of seconds and I wasn't able to test anymore. If I just swap the mario.lua file and not the koopa.lua file, the enemies pass right through Mario again (and the game blues out after a couple of seconds). If I just swap out the koopa.lua file and not the mario.lua file, the same thing happens. I've gone about as far with this as my troubleshooting skills will allow me (I've only been at this since Sunday). Hopefully someone who knows more about this than me can take this info and run with it.

I tried completely uninstalling and re-downloading MarioMS to see if that fixed the issue. It didn't. I'm gonna try playing around with older versions now to see if that does any good. Hopefully a fix comes soon. I'm working on a fun, puzzle-heavy mod that takes Mario through the Deadlands, Purgatory and Hell that should be a lot of fun once we can get the shell-bearing enemies to function again. Several of the puzzles I set up depend on shells being kicked or portaled into areas at the right time, and this bug has got me stalled.

User avatar
ZenX2
Posts: 30
Joined: 07 Mar 2012, 06:23

Post » 24 Mar 2012, 06:38

To make talkboxes call OpenTalkBox with a table full of strings as the argument. There's a limit of 35 or so characters per line.

User avatar
RegrettedKarma6
Posts: 3
Joined: 04 Feb 2012, 15:17

Post » 25 Mar 2012, 06:01

I know I'll sound like a dumb-ass but how do you load/play the mods.

User avatar
Lone Wolf
Posts: 228
Joined: 05 Mar 2012, 00:41
Contact:

Post » 27 Mar 2012, 02:49

What are the modded files? i would like to know so i can port it to my .love file, and i don't want to screw anything else up.

DjShadFox
Posts: 12
Joined: 06 Mar 2012, 20:33

Post » 30 Mar 2012, 10:12

Which file should I change if I want to add a new text in the trigger?

User avatar
Lone Wolf
Posts: 228
Joined: 05 Mar 2012, 00:41
Contact:

Post » 30 Mar 2012, 20:44

DjShadFox wrote:Which file should I change if I want to add a new text in the trigger?
you need to have a "1-1.lua" (or one for each level).
ZenX2 wrote:To make talkboxes call OpenTalkBox with a table full of strings as the argument. There's a limit of 35 or so characters per line.

Post Reply