MiM (hacked) - On Hiatus since Feb 17, 2013

This is the place to post your own creative works for other to play or give feedback on!
Forum rules
This forum is for posting and collaborating upon third party work. Please do not post request-threads, and avoid posting artwork that is not your own unless it is being used as a reference.

Re: MiM (hacked) - Updated Apr. 20 (fix 24), 20

Postby Blargh » Fri May 04, 2012 4:39 pm

ivanaedler Wrote:I am here keeping on the merge (I've put some spoilers in order to let yours clean and with focal interests in the features of your game).
The Head finally get completed! The hands, thigh and foot (legs) too! ;) Lets say I'm 80% complete on Peach. But yet some glitches.

Spoiler (click to show/hide):

1) head helmets varying betwen frog and racoon when taking Frog Powerup
2) racoon suit (using your table of 0-naked, 1-dress, etc) which is '3', is giving her the sling bikini
3) frog suit is giving her the racoon suit (I could fiddle with the options (0,1,2,0,3,4) but I dont understand those zeroes and when I tried to change, it worsened!)
The suits objects are already set as the array '0 = Naked,1 = Princess,2 = Fire Princess,3 = Raccoon,4 = Frog,5 = Sling Bikini'.

4) problems with Shoulder
5) problems with Skirt

1) You need to change the label to "Raccoon" (two 'c's), and add the two frames in the Head Side clothes object for Raccoon. Those ones are still missing.

2) and 3) The Dress[] array is only used with a character select screen, and the different numbers in it are just setting the default costumes. Though, that being said, the second 0 was meant for Burn Peach (like Fire Peach, but naked, hence the 0). You can change the array to (0,1,2,3,4,5) to set the defaults to the same order as the DressSel[] array. DressChar[] can likewise be changed to (0,0,1,0,0,0).

Now, the real problem with the Frog and Raccoon power-ups is that the saved data is messed up and loads wrong data (I have no idea why). Replace the code below (you only have to do the commented-out line and line above it, the rest is just showing which section you should be in):
Code: Select All Code
if (_root.loadinfo.data.Dress == undefined)
{
   _root.loadinfo.data.Dress = new Array (0,1,2,3,4,5);
   for (i = 0; i < 5; i++)
   {
      _root.loadinfo.data.Dress[i] = _root.Dress[i];
   }
}
else
{
   for (i = 0; i < _root.Dress.length; i++)
   {
      _root.loadinfo.data.Dress[i] = _root.Dress[i]; //this line will reset the data. Delete it and uncomment the line below this after you've run it once.
//      _root.Dress[i] = _root.loadinfo.data.Dress[i];
   }
   _root.DressNum = _root.Dress[0];
}


4) and 5) Those will be fixed when you copy the frames into the shoulder/skirt objects (see below).

ivanaedler Wrote:
Spoiler (click to show/hide):

For about the Shoulder, clicking on it (in order to do the process you instructed) does not shows 'shoulder dress' or 'shoulder char', but a shoulder base (a vectorized image), because it is a piece which uses those unload and loadMovieClip in the frame action. Ok, exchanged those with 'DressSel and DresNum', and removed other characters in Shoulder Dress, copying the two chars clothing - fire and fire peach - and putting those in Shoulder, taking care with keyframes. When I play, Peach is then exchanging shoulder between Peach and Fire Peach.

When I let 'Shoulder' object with only one frame, even letting 'Shoulder Dress' with the same config as Arm Upper and Arm Fore you showed me (letting only naked, peach, fire, racoon, frog and sling), Peach now stays with the same red shoulder dress, no matter the powerup.

As for vest, its static. Naked Peach, for example , are shown with the vest.

As said in item 3) and 2), the frog powerup is showing racoon parts, like tail, and the racoon is showing parts of sling bikini.
Peach should be a frog when taking frog suit, or a racoon when taking racoon suit.

The label 'grab' of frog has this:
_root.DressNum = _root.Dress[3];
_root.CharNum = _root.DressChar[0];

I'm struggling around here in my free time. As the process are near to end, I just need some advice in those last steps.
In order to hasten my efforts, I've put all the 5 powerups in a row, in her castle.

After being 100%, I will be doing optimisations and I'll be posting in the MIM AE thread. You, of course, are always welcome. The next add-ons should be easier now because I will see whats not used anymore in the library. If something goes wrong, I can trace the error. After this second plan, now its time to bring all the new features (coinbox, jumping...). And I will use the mass swap algorithms I shared with you ;) innobedient FLA is here https://rapidshare.com/files/3804848903 ... _merge.rar

To fix the shoulders and skirt, you can just go into the old character select, copy the keyframes out of the shoulder/skirt pieces there (just the ones that have the costume pieces in them), and paste them into the main shoulder/skirt parts. Then copy the actionscript and label frames from the Vest and paste them in the shoulder/skirt.

Another thing you'll need to fix. Raccoon is spelled with two 'c's in all of the code references, so the CharMove in the Raccoon power-up should be '_root.CharMove = "Raccoon";'.
"Is that seriously the end of that story?"
User avatar
Blargh
 
Joined: Fri Dec 10, 2010 3:11 am
Location: Calgary

Re: MiM (hacked) - Updated Apr. 20 (fix 24), 20

Postby LuftMallow » Fri May 04, 2012 9:34 pm

I'm getting acquainted to the new system for Peach's parts. Now at least it's easier to alter the other hands without having to look for them. There is an issue I'm having with adding eyes, however. The character's eyes stay theirs, but they blink in and out. Could you point out what I'm missing here, please?

EDIT: Nevermind, I found it just after I posted.
User avatar
LuftMallow
 
Joined: Sun Mar 06, 2011 12:29 am
Location: In the lofty heights above

Re: MiM (hacked) - Updated Apr. 20 (fix 24), 20

Postby ShadowedDalaketx » Fri May 04, 2012 11:36 pm

yuna Wrote:I don't know if this has happened to anyone else, or if it has even been brought up, but only half the flash shows. If I ran it in a seperate window/tab, it shows everything, but when it's on this site, it's cut off just barely to the right of the disclaimer thingy at the beginning. Is it just my computer or is it a problem with anyone else?


This one has a suggestion for you as I have the solution to your problem. try zooming the web-page out if that makes it worse, try zooming the other way. This work not only for MiM but all flashes that are not showing themselves properly.
Who says I have to do anything? It sure as hell ain't me!

I do what I want where i want when I want...

Unless She disagrees...

Just remember... I'll be around... Watching...
Image
ShadowedDalaketx
 
Joined: Fri Mar 30, 2012 10:13 pm
Location: A dragon's lair hidden somwhere in england.

Re: MiM (hacked) - Updated Apr. 20 (fix 24), 20

Postby Blargh » Sat May 05, 2012 2:27 am

New update:
- Frog speed is now a lot faster underwater. Outside of water, it's at Poison speed.
- Did some work on the Metroid Bikini
- Fixed the graphic glitches at the bath
- Added the bomb activation to progression
* Save your game after activating the bomb, and it will be active when you continue or load
- Stopped the bombs from opening doors when you're not around, and the explosion sound won't go off from across the map (you have to see the explosion to hear it)
- Changed the Exit Credits button below the throne to Status button (to return to the first page of the options screen)
- Fixed the sounds on the poison shroom, burn shroom, and frog suit when you pick them up
- Changed the shape of the camera to a 4:3 perspective. This will give more vertical vision.
- Finally added another scene to the Bloopers
PS: This update's FLA is here: http://www.mediafire.com/?wmncr3pw73w8fna.

I figured I should at least get done one new scene on the Bloopers, since the rest of the update is just bug-fixes. >_>
"Is that seriously the end of that story?"
User avatar
Blargh
 
Joined: Fri Dec 10, 2010 3:11 am
Location: Calgary

Re: MiM (hacked) - Updated May 4, 2012

Postby LuftMallow » Sat May 05, 2012 6:01 am

I finished the under water background parts. The sub looks a little better now, but I decided not to change the direction of the rivets.
Attachments
Seabackground.fla
(369.5 KiB) Downloaded 55 times
User avatar
LuftMallow
 
Joined: Sun Mar 06, 2011 12:29 am
Location: In the lofty heights above

Re: MiM (hacked) - Updated May 4, 2012

Postby Lucky777 » Sat May 05, 2012 4:31 pm

New blooper scene's pretty nice, but sadly I guess squirting is invisible under water XD.
User avatar
Lucky777
 
Joined: Sat Dec 18, 2010 12:44 am
Location: Chambers: Bandit Division

Re: MiM (hacked) - Updated Apr. 20 (fix 24), 20

Postby Ivan-Aedler » Sat May 05, 2012 4:47 pm

Blargh Wrote:To fix the shoulders and skirt, you can just go into the old character select, copy the keyframes out of the shoulder/skirt pieces there (just the ones that have the costume pieces in them), and paste them into the main shoulder/skirt parts. Then copy the actionscript and label frames from the Vest and paste them in the shoulder/skirt.

Done! Did this using part of the dawn. It was a good night, less stress, and finally got it! Image Image Image Big Thank you!! Thats because of naming conventions 'skirt dress, vest clothes'..., and the fact some items was in different directories, as well as Head, Head Clothes, Head Clothes Side (instead of Head Side Clothes)... I just figured it out. And maintained the '13 frames' shaping of all possible characters and dresses (Naked, Princess, Fire Princess, Raccoon, Frog and Sling Bikini). Thank you!!

Spoiler (click to show/hide):

EDIT: Hmmmmm in my code (and Playshapes), if I am correct, Raccoon was '3'. In your code, it's actually '4' (CoonPower = 4 in Scene1). I changed this number and now the Raccoon appeared. :mrgreen:

EDIT: Also, only recently I have noticed that DressSel = 0 is naked (before, it was 2).

EDIT again: I've got a new roof image (I can share with you). Its a better vectorized image. And I've got 3x zoom working with your version. Hmmm...things now going on, but to include my jumping code, I´ll use my older code. It will copy ok, but, then, I'll be hovering inside the timeline to update each part to yours, in order, for example, to let her head still messy with cum while jumping. With mass swap (two scripts I put in a recent post here), I think it will be better :)

EDIT of EDIT: Mass Swap is not working with CS5 (it's not being shown in commands menu). Even with Adobe Extension Manager showing it as installed and active :evil:

Now I'm just finishing the Side Head (those with the frog and raccoon helmets) and I'll be updating the rest (now I can guide the steering wheel) ;)
EDIT: Finished!! (for (f=1; f<=10;f++){HUD.sigharea.text="Sigh"+"-"+HUD.sigharea.text;}) :mrgreen:
Spoiler (click to show/hide):

Click to Play
(Javascript Required)

Mario is Missing (hacked) CS5.0 AE (fix for ivanaedler)4opt.swf [ 3.08 MiB | Viewed 3526 times ]


Blargh Wrote:New update:
- Frog speed is now a lot faster underwater. Outside of water, it's at Poison speed.

I really want to help you in a new animation for the frog ;) I'll tell you if I start the animation process. No problem if I just keep the current animation principles (that is, use your default walking as a base, not touching the new mechanisms. The action of 'using another animation' will only happens when a given variable is set like '_root.CharMove == 'Frog". If the jumping scenes are done without too much hassle, it will be easy to add swimming here and there.

Errr...I've found some small bugs in your last version:Image
- In some places , you can't click on peach to change zoom. I noticed that when Peach was in the front of toad's ballons of text (or morton), as well as when hovered the mouse around the items in HUD, the cursor changed to 'typing' mode. It also occurs in end level stats (after coins collected and enemies laid). This occurs because these text boxes are 'selectable'. In the text properties tab in flash, there are three buttons in CHARACTER settings of the font. The first of them is 'Selectable' (icon of A and B). You need to disable this button in every text field, as in toad's conversation ballons.

- Strangelly, the ponytail of Peach is like detached from her hair, when she walks left or right. If you did this because of the character select, no problem, its understandable. But if you only change the ponytail of peach herself, inside its movie clip, say, to a bit upward, it will stay better placed.
Spoiler (click to show/hide):

Image

- I've tested your game with FPS=25 and it became better. Almost smooth. You can change that in 'Modify -> Document' menu.
- In the start menu, when you choose the gallery, then you change SOUND to off, then on again, the start music loops forever until leaving gallery. Thats because the music is so narrow in time. This problem occurs only with short music, as the player is still adjusting the options when he listens the music again and again.
- On the start of any level, we see that the camera searches for Peach , then centralizes on her. This occurs because the camera movie clip (in the last frame of Scene1, in a blue square area) or HUD aren't in with Peach in its center. I suggest keeping HUD and camera with Peach in center of them.
- I noticed in the last versions that the second toad at the stairs (castle level) has lost the text ballon.
- The fire wheel doesnt make the character lose the actual powerup (like dress or raccoon). If you want, you can use the code I used for this (function she_is_hit()), which is placed in frame 2 of Scene1. This code accepts no parameters (when any enemy hits her), and the parameter 'fall', which makes her lose a life when falling or hitting a spike, returning to the last checkpoint with a 'naked' powerup. So in the fall areas (big rectangles), you only need to call this function in 'on enter frame', instead of tons of code);). Of course, you may adapt it to receive your current checkpoint mechanics (five, so far, afaik). I used the former way (the function in Scene2 uses _root.checkpoints_x and y setted in each level). Works too.

And I have some tips below:
Spoiler (click to show/hide):

- I have a more complete music of 'Mushroom Kingdom'. If you want it, its in the attachment (rar) ;)
- I also have the underwater theme of Mario - a remastered version. Its also in the attachment. You can put it in the water level ;)
MIM mushroom kimgdom and water level music.rar
(978.78 KiB) Downloaded 21 times

- Im playing with 'cacheAsBitmap' property on Peach, which receives too many translates (moving from x and y), like walking. Using that property in a movie clip can significantly increase performance! Its nothing to do with converting vectors to bitmaps, but its a kind of second buffer! http://help.adobe.com/en_US/AS2LCR/Flas ... 01283.html
- You might use ESC (escape key) to activate the menu.
The code can be inside the character on-object action ('sub-peach' action), where your other keypresses are:
Code: Select All Code
on (keypress "<escape>")
{
   if (_root.ShowControls == "Open")
   {
      _root.ShowControls = "Close";
      _root.MenuWindow = "show";
   }
   else
   {
      _root.ShowControls = "Open";
      _root.MenuWindow = "hide";
   }
}

- Its better to put 'mastright' and 'mastleft' inside 'char' on object than is '5' and '6' now.:

Code: Select All Code
"if (_root.char.right)
{
_root.char.character.gotoAndStop("mastright");
}
else
{
_root.char.character.gotoAndStop("mastleft");

As I am implementing jumping (and soon, swimming), the 'table of timeline activities' is following the default reference by label. So I updated here with mast names.
Last edited by Ivan-Aedler on Mon May 07, 2012 5:44 pm, edited 1 time in total.
User avatar
Ivan-Aedler
 
Joined: Fri Jun 03, 2011 6:34 am
Location: GMT -3

Re: MiM (hacked) - Updated May 4, 2012

Postby banmido9191 » Mon May 07, 2012 12:45 am

after this previous update, i am unable to move the character in the game.... >.<
banmido9191
Newly Registered
 
Joined: Mon May 07, 2012 12:44 am

Re: MiM (hacked) - Updated May 4, 2012

Postby miracal15 » Mon May 07, 2012 12:50 am

You should put more worlds and characters :D
miracal15
Newly Registered
 
Joined: Mon May 07, 2012 12:45 am

Re: MiM (hacked) - Updated May 4, 2012

Postby Zeus Kabob » Mon May 07, 2012 7:26 am

miracal15 Wrote:You should put more worlds and characters :D


>:D
User avatar
Zeus Kabob
Moderator
 
Joined: Tue Nov 16, 2010 2:16 am
Location: Between some awesome thunderheads

Re: MiM (hacked) - Updated May 4, 2012

Postby Ivan-Aedler » Tue May 08, 2012 1:12 am

Blargh, I got Peach jumping animation in your version ;)
Spoiler (click to show/hide):

But! Because of the way Playshapes did in the first place (Peach 'char' object with two only frames, one that has subframes, and other with label 'jump' only), and the fact that Peach mechanics (char on-object action) uses those 'ifs' in every movement, jumping was only able to work if those frames are created right after that only frame of 'char' (substituting those lonely 'jump' label). That's in order not to conflict with masturbation and other movement. It was unpraticable to create two new frames in the 'frames type' area (this would be better), where she can walk left, right, mast right, mast lfet, cover right, etc (it she would have 'jump right' and 'jump left' there). But it did'nt work, and even problems arose (like Peach masturbation sound while jumping and she jumps without any animation). Even following the rules, the fact that jumping requires the player to press UP, whose command has to be called in the char on-object action too, trigger the afore mentioned conflict.


Now, all is working. I just have to change each part to the new parts.
User avatar
Ivan-Aedler
 
Joined: Fri Jun 03, 2011 6:34 am
Location: GMT -3

Re: MiM (hacked) - Updated May 4, 2012

Postby Blargh » Tue May 08, 2012 3:49 am

LuftMallow Wrote:I finished the under water background parts. The sub looks a little better now, but I decided not to change the direction of the rivets.

Sub: Looking good! ^_^
Rivets: Still no idea what's supposed to be wrong with them. o_o

banmido9191 Wrote:after this previous update, i am unable to move the character in the game.... >.<

After starting the game, can you right-click on it and click Rewind? Does that help? When you're not able to move, are you still able to use short-cut keys, like 'c' for the control list, or 'b' to change boob size?

miracal15 Wrote:You should put more worlds and characters :D

They're planned, but it still takes a long time to build.

ivanaedler Wrote:
Blargh Wrote:To fix the shoulders and skirt, you can just go into the old character select, copy the keyframes out of the shoulder/skirt pieces there (just the ones that have the costume pieces in them), and paste them into the main shoulder/skirt parts. Then copy the actionscript and label frames from the Vest and paste them in the shoulder/skirt.

Done! Did this using part of the dawn. It was a good night, less stress, and finally got it! Image Image Image Big Thank you!! Thats because of naming conventions 'skirt dress, vest clothes'..., and the fact some items was in different directories, as well as Head, Head Clothes, Head Clothes Side (instead of Head Side Clothes)... I just figured it out. And maintained the '13 frames' shaping of all possible characters and dresses (Naked, Princess, Fire Princess, Raccoon, Frog and Sling Bikini). Thank you!!

Spoiler (click to show/hide):

EDIT: Hmmmmm in my code (and Playshapes), if I am correct, Raccoon was '3'. In your code, it's actually '4' (CoonPower = 4 in Scene1). I changed this number and now the Raccoon appeared. :mrgreen:

EDIT: Also, only recently I have noticed that DressSel = 0 is naked (before, it was 2).

EDIT again: I've got a new roof image (I can share with you). Its a better vectorized image. And I've got 3x zoom working with your version. Hmmm...things now going on, but to include my jumping code, I´ll use my older code. It will copy ok, but, then, I'll be hovering inside the timeline to update each part to yours, in order, for example, to let her head still messy with cum while jumping. With mass swap (two scripts I put in a recent post here), I think it will be better :)

EDIT of EDIT: Mass Swap is not working with CS5 (it's not being shown in commands menu). Even with Adobe Extension Manager showing it as installed and active :evil:

Now I'm just finishing the Side Head (those with the frog and raccoon helmets) and I'll be updating the rest (now I can guide the steering wheel) ;)
EDIT: Finished!! (for (f=1; f<=10;f++){HUD.sigharea.text="Sigh"+"-"+HUD.sigharea.text;}) :mrgreen:
Spoiler (click to show/hide):

Mario is Missing (hacked) CS5.0 AE (fix for ivanaedler)4opt.swf

Okay, it sounds like you've got it all figured out! ^_^ I have a Mass Swap extension already, which has been ungodly helpful for me (from here: http://toonmonkey.com/extensions.html). :)

ivanaedler Wrote:
Blargh Wrote:New update:
- Frog speed is now a lot faster underwater. Outside of water, it's at Poison speed.

I really want to help you in a new animation for the frog ;) I'll tell you if I start the animation process. No problem if I just keep the current animation principles (that is, use your default walking as a base, not touching the new mechanisms. The action of 'using another animation' will only happens when a given variable is set like '_root.CharMove == 'Frog". If the jumping scenes are done without too much hassle, it will be easy to add swimming here and there.

Errr...I've found some small bugs in your last version:Image
- In some places , you can't click on peach to change zoom. I noticed that when Peach was in the front of toad's ballons of text (or morton), as well as when hovered the mouse around the items in HUD, the cursor changed to 'typing' mode. It also occurs in end level stats (after coins collected and enemies laid). This occurs because these text boxes are 'selectable'. In the text properties tab in flash, there are three buttons in CHARACTER settings of the font. The first of them is 'Selectable' (icon of A and B). You need to disable this button in every text field, as in toad's conversation ballons.

- Strangelly, the ponytail of Peach is like detached from her hair, when she walks left or right. If you did this because of the character select, no problem, its understandable. But if you only change the ponytail of peach herself, inside its movie clip, say, to a bit upward, it will stay better placed.
Spoiler (click to show/hide):

Image

- I've tested your game with FPS=25 and it became better. Almost smooth. You can change that in 'Modify -> Document' menu.
- In the start menu, when you choose the gallery, then you change SOUND to off, then on again, the start music loops forever until leaving gallery. Thats because the music is so narrow in time. This problem occurs only with short music, as the player is still adjusting the options when he listens the music again and again.
- On the start of any level, we see that the camera searches for Peach , then centralizes on her. This occurs because the camera movie clip (in the last frame of Scene1, in a blue square area) or HUD aren't in with Peach in its center. I suggest keeping HUD and camera with Peach in center of them.
- I noticed in the last versions that the second toad at the stairs (castle level) has lost the text ballon.
- The fire wheel doesnt make the character lose the actual powerup (like dress or raccoon). If you want, you can use the code I used for this (function she_is_hit()), which is placed in frame 2 of Scene1. This code accepts no parameters (when any enemy hits her), and the parameter 'fall', which makes her lose a life when falling or hitting a spike, returning to the last checkpoint with a 'naked' powerup. So in the fall areas (big rectangles), you only need to call this function in 'on enter frame', instead of tons of code);). Of course, you may adapt it to receive your current checkpoint mechanics (five, so far, afaik). I used the former way (the function in Scene2 uses _root.checkpoints_x and y setted in each level). Works too.

And I have some tips below:
Spoiler (click to show/hide):

- I have a more complete music of 'Mushroom Kingdom'. If you want it, its in the attachment (rar) ;)
- I also have the underwater theme of Mario - a remastered version. Its also in the attachment. You can put it in the water level ;)
- Im playing with 'cacheAsBitmap' property on Peach, which receives too many translates (moving from x and y), like walking. Using that property in a movie clip can significantly increase performance! Its nothing to do with converting vectors to bitmaps, but its a kind of second buffer! http://help.adobe.com/en_US/AS2LCR/Flas ... 01283.html
- You might use ESC (escape key) to activate the menu.
The code can be inside the character on-object action ('sub-peach' action), where your other keypresses are:
Code: Select All Code
on (keypress "<escape>")
{
   if (_root.ShowControls == "Open")
   {
      _root.ShowControls = "Close";
      _root.MenuWindow = "show";
   }
   else
   {
      _root.ShowControls = "Open";
      _root.MenuWindow = "hide";
   }
}

- Its better to put 'mastright' and 'mastleft' inside 'char' on object than is '5' and '6' now.:

Code: Select All Code
"if (_root.char.right)
{
_root.char.character.gotoAndStop("mastright");
}
else
{
_root.char.character.gotoAndStop("mastleft");

As I am implementing jumping (and soon, swimming), the 'table of timeline activities' is following the default reference by label. So I updated here with mast names.

- If you do make a horizontal swimming animation, remember that that the hitbox would also have to change to horizontal to maintain the touch-activation. It should be a simple change in the hitbox movieclip to have it shift to a new orientation when the CharMove is Frog (or Penguin sometime in the far-flung future).
- Depending on the objects around and over the buttons, I've noticed that some buttons don't like to activate.
- I thought I had already disabled selectable text in a lot of places. I'll have to look into that.
- I've always had issues with lining up objects like the hair because of the positions on everyone else's hair. Slowly, I will get everything eventually lined up.
- I mostly build movies around the 16 frames/second mark. At 25 FPS, the animations move around too quickly.
- Huh. I guess it's keeping the sound from the opening. I'll have to make that empty.
- I put the camera in a central location so that it can quickly move to which checkpoint Peach happens to load at. If I can only pick one area to start the camera at, I need it to be (somewhat) equidistant to each of the checkpoints.
- I must have deleted it at some point and never went back to replace it.
- I removed the power-up change from the fire wheels because I already had the Burn Mushroom for changing the costume and didn't want to make it more common than the other power-ups.
- Thanks for the music! I'll add it in so that wandering around looking for Bloopers isn't quite so dull. :p
- Seeing ":" for setting variables usually sets my head spinning, and I lose track of what's going on in the functions. :? cacheAsBitmap sounds good, but my brain has a hard time processing that code.
- I might set 'Escape' to cancel out of the menu, but not to open the menu. I'd probably set 'Enter' as the open menu button.
- I must've skipped the 'mast' references when I was putting in the 'stand' and 'walk' references. Thanks for pointing that out! ^_^

ivanaedler Wrote:Blargh, I got Peach jumping animation in your version ;)
Spoiler (click to show/hide):

But! Because of the way Playshapes did in the first place (Peach 'char' object with two only frames, one that has subframes, and other with label 'jump' only), and the fact that Peach mechanics (char on-object action) uses those 'ifs' in every movement, jumping was only able to work if those frames are created right after that only frame of 'char' (substituting those lonely 'jump' label). That's in order not to conflict with masturbation and other movement. It was unpraticable to create two new frames in the 'frames type' area (this would be better), where she can walk left, right, mast right, mast lfet, cover right, etc (it she would have 'jump right' and 'jump left' there). But it did'nt work, and even problems arose (like Peach masturbation sound while jumping and she jumps without any animation). Even following the rules, the fact that jumping requires the player to press UP, whose command has to be called in the char on-object action too, trigger the afore mentioned conflict.


Now, all is working. I just have to change each part to the new parts.

I know Yumskerdoodle will probably be pretty annoyed, but I still haven't looked at the code for jumping up and jumping down. I would like to avoid four more frames in 'character' if it's possible. :/
"Is that seriously the end of that story?"
User avatar
Blargh
 
Joined: Fri Dec 10, 2010 3:11 am
Location: Calgary

Re: MiM (hacked) - Updated May 4, 2012

Postby Ivan-Aedler » Tue May 08, 2012 5:23 am

Blargh Wrote:Mass Swap extension

Thank you, I've tested here but same problem as the other two (they dont appear in commands menu). i've tested either installing all the three (without uninstalling any) and installing one by one (to avoid conflict). The ultimate explanation: they dont work with CS5.5 :/
Spoiler (click to show/hide):

Image


Blargh Wrote:If you do make a horizontal swimming animation, remember that that the hitbox would also have to change to horizontal to maintain the touch-activation. It should be a simple change in the hitbox movieclip to have it shift to a new orientation

You say CoinGrab? If so, yes, it will need to rotate a bit, as the character will be almost horizontal (diagonal) when swimming.

Blargh Wrote:I've always had issues with lining up objects like the hair because of the positions on everyone else's hair. Slowly, I will get everything eventually lined up

Okay ;) No hurry.

Blargh Wrote:I mostly build movies around the 16 frames/second mark. At 25 FPS, the animations move around too quickly

I tested here and its a bit slow :/ For the gameplay to be a bit smoother (that is, more control to jump, and discover things), I think 20 or more is enough.
The problem with faster framerates are the sex animations being faster as well (not so fast anyway), but I think it should be easy to stretch some frames (in the tweening areas). So it wont be needed to change every piece. But, of course, that's not a big priority. Maybe in the future ;) For me, I'll be using 22 to 25 and enlarging animation keyframes/tweens that I see its too fast to be enjoyed.

Blargh Wrote:I put the camera in a central location so that it can quickly move to which checkpoint Peach happens to load at. If I can only pick one area to start the camera at, I need it to be (somewhat) equidistant to each of the checkpoints.

You're right. I forgot the checkpoints :/ But, as the player will be seeing more the start position (in every new game, it will appear first), he will be enjoying a smooth start level anyway.

Blargh Wrote:cacheAsBitmap sounds good, but my brain has a hard time processing that code.

Yes, those ':' plays with objects, that is, instances of movieclips. Maybe a function to be used in the future ;) I'll test here if Peach char get this parameter on by default (as it can just be enabled if sub movies use filters, for example). There is a version using DOT, as 'background1.cacheAsBitmap = true', but this movie clip must have only static images or vectors that doesnt change. If you use a submovie clips of some sort (like a door that moves), it will not be cached.

For about optimizations,
I've seen on the web an optimization for speed, that can be done in the FOR loop case.
Spoiler (click to show/hide):

Code like this:

Code: Select All Code
for (var i in arr)
{
   if (arr[i] > 50)
   {
      // do some processing here
   }
}

has proved to be faster than this code:
Code: Select All Code
for (var i=0; i<10000; i++)
{
   if (arr[i] > 50)
   {
      // do some processing here
   }
}

by a 30% ratio!


And for using keypresses:
Spoiler (click to show/hide):

Instead of using if(Key.isDown(Key.LEFT)), or Key.isDown(39) every time, it is faster (more CPU performance) and easier to understand to setup a series of references like this:

Code: Select All Code
keyDown = Key.isDown
keyLeft = Key.LEFT
keyRight=Key.RIGHT...

and then use
Code: Select All Code
if (keyDown(keyLeft))

Blargh Wrote:I know Yumskerdoodle will probably be pretty annoyed, but I still haven't looked at the code for jumping up and jumping down. I would like to avoid four more frames in 'character' if it's possible. :/

I want to avoid too!! I've wasted hours trying to figure out a way to put in the right place and then, adjusting the 'if' of char on-object related to jumping. My actual code (resembles Playshapes MIM2 code) is:
Spoiler (click to show/hide):

Code: Select All Code
     // JUMP
       if ((Key.isDown(Key.UP) or Key.isDown(87)) && can_touch_ground && touchingGround)
        //to jump (and jump again), she need to be touching ground (stand up)
        //and can_touch_ground (a variable independent of touchingGround which is
        //closed related to 'able to touch a ground and jump from it right away'. Those two variables in this IF
        //fixes a problem with Peach jumping almost immediatelly if bricks are
        //too close of one another, and one higher than other (a building of blocks).
         {
        grav = maxJump;
       
      if(right)
          {
           _root.char.gotoAndPlay("jumpright");
          }
         else
          {
        _root.char.gotoAndPlay("jumpleft");
         }      


The code we want is:
Code: Select All Code
if ((Key.isDown(Key.UP) or Key.isDown(87)) && touchingGround)
{ // disabled can_touch_ground, to let it easier to understand. She should jump anyway...
grav = maxJump;
if(right)
   {
   _root.char.character.gotoAndStop("jumpright");
   }
else
   {
   _root.char.character.gotoAndStop("jumpleft");
   }
}      

But this one doesn't work! Das ist Kapputt! In a non fully understandable way, its mixing up with masturbation 'if' , below it (even not pressing 'down').
Then, when you press UP (not down) to jump, the masturbation sound are heard (like the gotoAndStop are actually wandering around the 'frame team' of char.character timeline). You would presume this because the first frame of the 'standing peach right' are played (worse, a clothed one. If she is naked, she will be clothed in first frame). Then she 'just goes up' and down(_y property) naked. Jumping animation frames are skipped altogether. I've tried to force 'stop()' in the end of jumpright and jumpleft frames, to no avail.

The bug should not be related to the code inside these new two new frames in char.character. These was copied from 'mast left or right' and just new animations are done. The problem is in the CHAR on-object. You know those Ifs are tested 100 to 1000 times or more each second. Maybe the jumping IF doesnt like the masturbation IF if those two called frames are in the char.character, child of char. You can test there in a free time. Just copy and paste one of mast left/right frames to a new one, call it 'jump right' (label), make a different animation (like just letting her head bend) and try to activate this animation using the jumping code 'if' as above. - if ((Key.isDown(Key.UP) or Key.isDown(87)) && touchingGround). PS: I know you know that '&&' is equal to 'and'. I use both conventions.
Last edited by Ivan-Aedler on Sun May 13, 2012 4:59 am, edited 12 times in total.
User avatar
Ivan-Aedler
 
Joined: Fri Jun 03, 2011 6:34 am
Location: GMT -3

Re: MiM (hacked) - Updated May 4, 2012

Postby Ivan-Aedler » Tue May 08, 2012 8:32 pm

About the game performance in general: :geek:

I have a small lab with some computers of different brands. P2, P3, P4 single, P4 core duo, and Core i5.
-MIM version used: your last version with a fixed 16fps game.
-Test area: first level, corridor with toads. Quality at maximum. Default flash screen size on a 1024x768 monitor.
-Software: irfanview's own flash player, Internet Explorer with flash player 11 and adobe flash player standalone.

Spoiler (click to show/hide):

P2 500: Mim didnt even play at all :D
P3: Mim played on P3 800mhz at 2fps (in all flash players).
P4 single:Mim played at 4fps (in all flash players).
P4 duo (notebook):Mim played with ATI card, at 5fps (in all flash players).
Core i5: Mim played with Geforce 9800GT, at full fps (in all flash players).

- Using the version of HummingBird (optimized, 1.5mb SWF, 25fps):
P3: played on P3 800mhz at 15fps
P4 single:Mim played at 22fps
P4 duo (notebook):Mim played with ATI card, at 25fps

If you put medium quality (pressing Q), the rate increases by mere 15%.
If you put low quality (right click in the windows - flash player properties), the rate increases by 30%.
If you resize the window (say, 400x300 window), the rate only increases 10% at most.


So I have good and bad news.
Spoiler (click to show/hide):

The good news: Mim works, Mim is a GREAT idea, and its marked to be a very delighful game, complete with levels and all enemies. The sky is the limit (arh'hem, that is, the space, as the sky will be used too).
The bad news: Right now, requirements: 'QUAD CORE', in order to enjoy the game in the current engine code. We need to change this engine, either using best pratices, like 'for (var i in array)', which is 30% faster than 'for (var i=0; i<1000; i++)' , put a 'gotoAndStop' or 'Stop' in a given default action frame in every timeline (save resources), avoid Ifs that set options too often (like CharMove), which is better to be inside a root function, Ifs without lines that does not change (prefer to put them outside the loop), always declaring variables using 'var'. Also, avoiding vector shape outlines at all costs, avoiding alpha between 0 and 100 in large vectors (its better PNG with alpha), that can give up to 100% speed. Also, using PNG than GIF or JPEG for bitmaps (PNG is faster), and a more broaden change (in the far future): using mathematics in the peach "char" (on-object action), like hummingbird version, which is not so hard at all, as this code remains constrained inside char.character. Or change the way it renders the background (creating a function to pixelate it a bit in slower systems, not killing the beauty of the level), or just use png backgrounds for pictures like blue rectangles, clouds and moutains (easy to do using 'modify as bitmap' on a layer, like foreground and background), and making sure its a PNG with alpha.

Anyway, flash 11 advises that games could be slow, so its their requirement to use a P4 or more.
Windows
2.33GHz or faster x86-compatible processor, or Intel® Atom™ 1.6GHz or faster processor for netbooks
Microsoft® Windows® XP (32-bit), Windows Server® 2003 (32-bit), Windows Server 2008 (32-bit), Windows Vista® (32-bit), Windows 7 (32-bit and 64-bit)
Internet Explorer 7.0 and above, Mozilla Firefox 4.0 and above, Google Chrome, Safari 5.0 and above, Opera 11
128MB of RAM (1GB of RAM recommended for netbooks); 128MB of graphics memory

The code to turn the background to a bitmap that uses tons of less resources is here. Its even better than cacheAsBitmap alone, as they resamples the entire group, and any sub movie clip that can disable cacheAsBitmap automatically got trapped in a bitmap state. You can pixelate it a way more, or almost with no traces (letting it almost like vector). It can be used on every movie clip you want in the level (like foreground, mid ground...) It's placed in the first frame (action) inside "LEVEL" (which is a set of all objects of the level). It cannot be placed right into Scene 1 because it uses an action frame which will conflict with the already-set action frame. In this unicque column of frames, one of them is background (another movie clip) with a label of 'frozenBackground' "level1_background", a better name, with no action frames - just either a column of each piece of the level, or an unicque frame of all items of the background, as walls):

Spoiler (click to show/hide):

This is how root.LEVEL behave.
/ ACTION
[o] [ ] [ ] [ ] [ ] [ ] -> empty frames. Only the first are used (column of background materials).
===============
Code: Select All Code
stop ();
setProperty("", _yscale, PLAYER_DATA.closeScale);
setProperty("", _xscale, PLAYER_DATA.closeScale);
PLAYER_DATA.canMove = true;
doScroll = function (x, y, smooth)
{
    var _loc2 = -_x - x;
    var _loc1 = -_y - y;
    setProperty("", _x, _x + _loc2 * smooth);
    setProperty("", _y, _y + _loc1 * smooth);
};
scroll = function (smooth)
{
    smooth = smooth ? (smooth) : (PLAYER_DATA.scrollSmooth);
    var _loc2 = _xscale / 100;
    var _loc1 = PLAYER._x;
    var _loc3 = PLAYER._y - PLAYER.hit._height / 2;
    _loc1 = _loc1 * _loc2;
    _loc3 = _loc3 * _loc2;
    var _loc4 = Stage.width / 2;
    var _loc5 = Stage.height / 2;
    doScroll(_loc1 - _loc4, _loc3 - _loc5, smooth);
};
onEnterFrame = function ()
{
    scroll();
};
var bgColor = 6724095;
var maxSize = 2880;
var tileWidth = Math.ceil(frozenBackground._width / maxSize);
var tileHeight = Math.ceil(frozenBackground._height / maxSize);

//Increase game performance up to 500%//
this.createEmptyMovieClip("renderedBackground", 999);
renderX = frozenBackground.topLeft._x;
renderY = frozenBackground.topLeft._y;
renderedBackground._x = renderX;
renderedBackground._y = renderY;
var newDepth = 0;
var yy = 0;
while (yy < tileHeight)
{
    var xx = 0;
    while (xx < tileWidth)
    {
        var new_mc = renderedBackground.createEmptyMovieClip("pic_" + newDepth, newDepth);
        new_mc._x = maxSize * xx;
        new_mc._y = maxSize * yy;
        new_mc.cacheAsBitmap = true;
        var new_pic = new flash.display.BitmapData(maxSize, maxSize, false, bgColor);
        var copyFrom = new flash.geom.Matrix();
        var copyX = renderX + maxSize * xx;
        var copyY = renderY + maxSize * yy;
        copyFrom.translate(-copyX, -copyY);
        new_pic.draw(frozenBackground, copyFrom);
        new_mc.attachBitmap(new_pic, 0, false, false);
        ++newDepth;
        ++xx;
    } // end while
    ++yy;
} // end while
renderedBackground.swapDepths(frozenBackground);
frozenBackground.unloadMovie();
[/spoiler]

Look at this line (THE MAGIC is in it!!)
Code: Select All Code
new_mc.cacheAsBitmap = true;

It does only need to substitute PLAYER with _root.char, then PLAYER_DATA.canmove with _root.movement, PLAYER_DATA_closescale with '100' and PLAYER_DATA_scroolsmooth with '1'. You don't need to know everything in this code. Its ready for use. As just for curiousity, this enhancement (rendered backgrounds) was possible since Flash Player 8.0.

EDIT: er....it need some changes in the Scene 1, as well. Everything except the camera, actions and label should be inside a container (movie clip), that could be called 'LEVEL'. In order to do this correctly, a column of frames are copied out to a new empty movie clip (instance name=LEVEL), then its dragged to the 'level' layer. Then, the code above will be set in the first frame. You then need to clear the frames of the ROOT column, except action, labels and camera, to avoid duplicates. In the _root.LEVEL, one of those sprites (our current background) must be also a new container (movie clip). That is easier to do, because it just need to select THE LAYER itself, then MENU->modify->create symbol. Instance name = level1_background. There isnt any action from it.

Finally, the char (peach) on-object action need to reference _root.LEVEL.char instead of _root.char, and _root.LEVEL.ground instead of _root.ground. Done!

Why I insist on this? Because the game will be 200 to 500% faster (in performance)! But as I've said, I'll test here first.
EDIT: 80% completed. Peach still doesnt like the new environment (she falls off the ground like she's a ghost). More tests needed.

In my free time, I will test it here and if you wish, I tell you how to use this code. But please don't take it as mandatory. I don't want you to skip your priorities for this, like glooper animations. Those things I've said here can be just a reference ;)
Last edited by Ivan-Aedler on Fri May 11, 2012 5:55 am, edited 5 times in total.
User avatar
Ivan-Aedler
 
Joined: Fri Jun 03, 2011 6:34 am
Location: GMT -3

Re: MiM (hacked) - Updated May 4, 2012

Postby Allsop2604 » Thu May 10, 2012 5:04 pm

Just wanted to take some time to praise Blargh. This project is the one that brings me to the forum daily. The amount of content you have added is simply astonishing. Add that with the choices of customization and you have seemingly unlimited hours of possible gameplay. That and I can't emphasize how nice it is to have consistent updates on a bi-weekly basis. I appreciate the effort you put in to make that happen.
^.^
User avatar
Allsop2604
 
Joined: Mon Aug 09, 2010 9:02 pm

Re: MiM (hacked) - Updated May 4, 2012

Postby nordicberserk » Sun May 13, 2012 3:57 am

YOu guys (Blargh and ivaneader) are AWESOME. your improvements on MiM can only continue to get better. One quick question though; what version is hte lates? I surf through hte forums and see a bunch of pretty similar ones. COuld you help a fan?
nordicberserk
Newly Registered
 
Joined: Mon May 07, 2012 9:15 pm

Re: MiM (hacked) - Updated May 4, 2012

Postby Lucky777 » Sun May 13, 2012 11:15 pm

The one in the first post of this thread is most usually Blargh's latest.
User avatar
Lucky777
 
Joined: Sat Dec 18, 2010 12:44 am
Location: Chambers: Bandit Division

Re: MiM (hacked) - Updated May 4, 2012

Postby banmido9191 » Mon May 14, 2012 10:21 pm

all the shortcut buttons still work. i'm just unable to move.
banmido9191
Newly Registered
 
Joined: Mon May 07, 2012 12:44 am

Re: MiM (hacked) - Updated May 4, 2012

Postby Ivan-Aedler » Tue May 15, 2012 12:06 am

Explosion Cum -> Water color to Cum color fix.
Blargh, I've found this error and I corrected the color.
If you want, just grab it ;)

You just have, actually, to overwrite the shapes (not the movie clip itself). Anyway, its all in the fla.
Attachments
girl_cum_explosion.fla
(71.57 KiB) Downloaded 215 times
User avatar
Ivan-Aedler
 
Joined: Fri Jun 03, 2011 6:34 am
Location: GMT -3

Re: MiM (hacked) - Updated May 4, 2012

Postby Blargh » Tue May 15, 2012 12:37 am

ivanaedler Wrote:
Blargh Wrote:Mass Swap extension

Thank you, I've tested here but same problem as the other two (they dont appear in commands menu). i've tested either installing all the three (without uninstalling any) and installing one by one (to avoid conflict). The ultimate explanation: they dont work with CS5.5 :/
Spoiler (click to show/hide):

Image


Blargh Wrote:If you do make a horizontal swimming animation, remember that that the hitbox would also have to change to horizontal to maintain the touch-activation. It should be a simple change in the hitbox movieclip to have it shift to a new orientation

You say CoinGrab? If so, yes, it will need to rotate a bit, as the character will be almost horizontal (diagonal) when swimming.

Blargh Wrote:I've always had issues with lining up objects like the hair because of the positions on everyone else's hair. Slowly, I will get everything eventually lined up

Okay ;) No hurry.

Blargh Wrote:I mostly build movies around the 16 frames/second mark. At 25 FPS, the animations move around too quickly

I tested here and its a bit slow :/ For the gameplay to be a bit smoother (that is, more control to jump, and discover things), I think 20 or more is enough.
The problem with faster framerates are the sex animations being faster as well (not so fast anyway), but I think it should be easy to stretch some frames (in the tweening areas). So it wont be needed to change every piece. But, of course, that's not a big priority. Maybe in the future ;) For me, I'll be using 22 to 25 and enlarging animation keyframes/tweens that I see its too fast to be enjoyed.

Blargh Wrote:I put the camera in a central location so that it can quickly move to which checkpoint Peach happens to load at. If I can only pick one area to start the camera at, I need it to be (somewhat) equidistant to each of the checkpoints.

You're right. I forgot the checkpoints :/ But, as the player will be seeing more the start position (in every new game, it will appear first), he will be enjoying a smooth start level anyway.

Blargh Wrote:cacheAsBitmap sounds good, but my brain has a hard time processing that code.

Yes, those ':' plays with objects, that is, instances of movieclips. Maybe a function to be used in the future ;) I'll test here if Peach char get this parameter on by default (as it can just be enabled if sub movies use filters, for example). There is a version using DOT, as 'background1.cacheAsBitmap = true', but this movie clip must have only static images or vectors that doesnt change. If you use a submovie clips of some sort (like a door that moves), it will not be cached.

For about optimizations,
I've seen on the web an optimization for speed, that can be done in the FOR loop case.
Spoiler (click to show/hide):

Code like this:

Code: Select All Code
for (var i in arr)
{
   if (arr[i] > 50)
   {
      // do some processing here
   }
}

has proved to be faster than this code:
Code: Select All Code
for (var i=0; i<10000; i++)
{
   if (arr[i] > 50)
   {
      // do some processing here
   }
}

by a 30% ratio!


And for using keypresses:
Spoiler (click to show/hide):

Instead of using if(Key.isDown(Key.LEFT)), or Key.isDown(39) every time, it is faster (more CPU performance) and easier to understand to setup a series of references like this:

Code: Select All Code
keyDown = Key.isDown
keyLeft = Key.LEFT
keyRight=Key.RIGHT...

and then use
Code: Select All Code
if (keyDown(keyLeft))

Blargh Wrote:I know Yumskerdoodle will probably be pretty annoyed, but I still haven't looked at the code for jumping up and jumping down. I would like to avoid four more frames in 'character' if it's possible. :/

I want to avoid too!! I've wasted hours trying to figure out a way to put in the right place and then, adjusting the 'if' of char on-object related to jumping. My actual code (resembles Playshapes MIM2 code) is:
Spoiler (click to show/hide):

Code: Select All Code
     // JUMP
       if ((Key.isDown(Key.UP) or Key.isDown(87)) && can_touch_ground && touchingGround)
        //to jump (and jump again), she need to be touching ground (stand up)
        //and can_touch_ground (a variable independent of touchingGround which is
        //closed related to 'able to touch a ground and jump from it right away'. Those two variables in this IF
        //fixes a problem with Peach jumping almost immediatelly if bricks are
        //too close of one another, and one higher than other (a building of blocks).
         {
        grav = maxJump;
       
      if(right)
          {
           _root.char.gotoAndPlay("jumpright");
          }
         else
          {
        _root.char.gotoAndPlay("jumpleft");
         }      


The code we want is:
Code: Select All Code
if ((Key.isDown(Key.UP) or Key.isDown(87)) && touchingGround)
{ // disabled can_touch_ground, to let it easier to understand. She should jump anyway...
grav = maxJump;
if(right)
   {
   _root.char.character.gotoAndStop("jumpright");
   }
else
   {
   _root.char.character.gotoAndStop("jumpleft");
   }
}      

But this one doesn't work! Das ist Kapputt! In a non fully understandable way, its mixing up with masturbation 'if' , below it (even not pressing 'down').
Then, when you press UP (not down) to jump, the masturbation sound are heard (like the gotoAndStop are actually wandering around the 'frame team' of char.character timeline). You would presume this because the first frame of the 'standing peach right' are played (worse, a clothed one. If she is naked, she will be clothed in first frame). Then she 'just goes up' and down(_y property) naked. Jumping animation frames are skipped altogether. I've tried to force 'stop()' in the end of jumpright and jumpleft frames, to no avail.

The bug should not be related to the code inside these new two new frames in char.character. These was copied from 'mast left or right' and just new animations are done. The problem is in the CHAR on-object. You know those Ifs are tested 100 to 1000 times or more each second. Maybe the jumping IF doesnt like the masturbation IF if those two called frames are in the char.character, child of char. You can test there in a free time. Just copy and paste one of mast left/right frames to a new one, call it 'jump right' (label), make a different animation (like just letting her head bend) and try to activate this animation using the jumping code 'if' as above. - if ((Key.isDown(Key.UP) or Key.isDown(87)) && touchingGround). PS: I know you know that '&&' is equal to 'and'. I use both conventions.


That's a really good point about the keys. I keep having to look up which is which all the time. :?

You pretty much have to have some sort of limiting variable to keep it out of the 'if' statements the code shouldn't be parsing through, but still changing it at a time when it's supposed to be parsing. I was having the same kind of confusion trying to program movement for the Bloopers. Now I'm giving up on that and just going with a basic back and forth movement like the Goombas because it just isn't worth the trouble. Even though the code is done, it's going to be even more trouble linking it to the focus zoom on the camera, which is the only reason I was even re-programming in the first place, and it'll be a lot more effort to program pathing for other enemies. :/

ivanaedler Wrote:About the game performance in general: :geek:

I have a small lab with some computers of different brands. P2, P3, P4 single, P4 core duo, and Core i5.
-MIM version used: your last version with a fixed 16fps game.
-Test area: first level, corridor with toads. Quality at maximum. Default flash screen size on a 1024x768 monitor.
-Software: irfanview's own flash player, Internet Explorer with flash player 11 and adobe flash player standalone.

Spoiler (click to show/hide):

P2 500: Mim didnt even play at all :D
P3: Mim played on P3 800mhz at 2fps (in all flash players).
P4 single:Mim played at 4fps (in all flash players).
P4 duo (notebook):Mim played with ATI card, at 5fps (in all flash players).
Core i5: Mim played with Geforce 9800GT, at full fps (in all flash players).

- Using the version of HummingBird (optimized, 1.5mb SWF, 25fps):
P3: played on P3 800mhz at 15fps
P4 single:Mim played at 22fps
P4 duo (notebook):Mim played with ATI card, at 25fps

If you put medium quality (pressing Q), the rate increases by mere 15%.
If you put low quality (right click in the windows - flash player properties), the rate increases by 30%.
If you resize the window (say, 400x300 window), the rate only increases 10% at most.


So I have good and bad news.
Spoiler (click to show/hide):

The good news: Mim works, Mim is a GREAT idea, and its marked to be a very delighful game, complete with levels and all enemies. The sky is the limit (arh'hem, that is, the space, as the sky will be used too).
The bad news: Right now, requirements: 'QUAD CORE', in order to enjoy the game in the current engine code. We need to change this engine, either using best pratices, like 'for (var i in array)', which is 30% faster than 'for (var i=0; i<1000; i++)' , put a 'gotoAndStop' or 'Stop' in a given default action frame in every timeline (save resources), avoid Ifs that set options too often (like CharMove), which is better to be inside a root function, Ifs without lines that does not change (prefer to put them outside the loop), always declaring variables using 'var'. Also, avoiding vector shape outlines at all costs, avoiding alpha between 0 and 100 in large vectors (its better PNG with alpha), that can give up to 100% speed. Also, using PNG than GIF or JPEG for bitmaps (PNG is faster), and a more broaden change (in the far future): using mathematics in the peach "char" (on-object action), like hummingbird version, which is not so hard at all, as this code remains constrained inside char.character. Or change the way it renders the background (creating a function to pixelate it a bit in slower systems, not killing the beauty of the level), or just use png backgrounds for pictures like blue rectangles, clouds and moutains (easy to do using 'modify as bitmap' on a layer, like foreground and background), and making sure its a PNG with alpha.

Anyway, flash 11 advises that games could be slow, so its their requirement to use a P4 or more.
Windows
2.33GHz or faster x86-compatible processor, or Intel® Atom™ 1.6GHz or faster processor for netbooks
Microsoft® Windows® XP (32-bit), Windows Server® 2003 (32-bit), Windows Server 2008 (32-bit), Windows Vista® (32-bit), Windows 7 (32-bit and 64-bit)
Internet Explorer 7.0 and above, Mozilla Firefox 4.0 and above, Google Chrome, Safari 5.0 and above, Opera 11
128MB of RAM (1GB of RAM recommended for netbooks); 128MB of graphics memory

The code to turn the background to a bitmap that uses tons of less resources is here. Its even better than cacheAsBitmap alone, as they resamples the entire group, and any sub movie clip that can disable cacheAsBitmap automatically got trapped in a bitmap state. You can pixelate it a way more, or almost with no traces (letting it almost like vector). It can be used on every movie clip you want in the level (like foreground, mid ground...) It's placed in the first frame (action) inside "LEVEL" (which is a set of all objects of the level). It cannot be placed right into Scene 1 because it uses an action frame which will conflict with the already-set action frame. In this unicque column of frames, one of them is background (another movie clip) with a label of 'frozenBackground' "level1_background", a better name, with no action frames - just either a column of each piece of the level, or an unicque frame of all items of the background, as walls):

Spoiler (click to show/hide):

This is how root.LEVEL behave.
/ ACTION
[o] [ ] [ ] [ ] [ ] [ ] -> empty frames. Only the first are used (column of background materials).
===============
Code: Select All Code
stop ();
setProperty("", _yscale, PLAYER_DATA.closeScale);
setProperty("", _xscale, PLAYER_DATA.closeScale);
PLAYER_DATA.canMove = true;
doScroll = function (x, y, smooth)
{
    var _loc2 = -_x - x;
    var _loc1 = -_y - y;
    setProperty("", _x, _x + _loc2 * smooth);
    setProperty("", _y, _y + _loc1 * smooth);
};
scroll = function (smooth)
{
    smooth = smooth ? (smooth) : (PLAYER_DATA.scrollSmooth);
    var _loc2 = _xscale / 100;
    var _loc1 = PLAYER._x;
    var _loc3 = PLAYER._y - PLAYER.hit._height / 2;
    _loc1 = _loc1 * _loc2;
    _loc3 = _loc3 * _loc2;
    var _loc4 = Stage.width / 2;
    var _loc5 = Stage.height / 2;
    doScroll(_loc1 - _loc4, _loc3 - _loc5, smooth);
};
onEnterFrame = function ()
{
    scroll();
};
var bgColor = 6724095;
var maxSize = 2880;
var tileWidth = Math.ceil(frozenBackground._width / maxSize);
var tileHeight = Math.ceil(frozenBackground._height / maxSize);

//Increase game performance up to 500%//
this.createEmptyMovieClip("renderedBackground", 999);
renderX = frozenBackground.topLeft._x;
renderY = frozenBackground.topLeft._y;
renderedBackground._x = renderX;
renderedBackground._y = renderY;
var newDepth = 0;
var yy = 0;
while (yy < tileHeight)
{
    var xx = 0;
    while (xx < tileWidth)
    {
        var new_mc = renderedBackground.createEmptyMovieClip("pic_" + newDepth, newDepth);
        new_mc._x = maxSize * xx;
        new_mc._y = maxSize * yy;
        new_mc.cacheAsBitmap = true;
        var new_pic = new flash.display.BitmapData(maxSize, maxSize, false, bgColor);
        var copyFrom = new flash.geom.Matrix();
        var copyX = renderX + maxSize * xx;
        var copyY = renderY + maxSize * yy;
        copyFrom.translate(-copyX, -copyY);
        new_pic.draw(frozenBackground, copyFrom);
        new_mc.attachBitmap(new_pic, 0, false, false);
        ++newDepth;
        ++xx;
    } // end while
    ++yy;
} // end while
renderedBackground.swapDepths(frozenBackground);
frozenBackground.unloadMovie();
[/spoiler]

Look at this line (THE MAGIC is in it!!)
Code: Select All Code
new_mc.cacheAsBitmap = true;

It does only need to substitute PLAYER with _root.char, then PLAYER_DATA.canmove with _root.movement, PLAYER_DATA_closescale with '100' and PLAYER_DATA_scroolsmooth with '1'. You don't need to know everything in this code. Its ready for use. As just for curiousity, this enhancement (rendered backgrounds) was possible since Flash Player 8.0.

EDIT: er....it need some changes in the Scene 1, as well. Everything except the camera, actions and label should be inside a container (movie clip), that could be called 'LEVEL'. In order to do this correctly, a column of frames are copied out to a new empty movie clip (instance name=LEVEL), then its dragged to the 'level' layer. Then, the code above will be set in the first frame. You then need to clear the frames of the ROOT column, except action, labels and camera, to avoid duplicates. In the _root.LEVEL, one of those sprites (our current background) must be also a new container (movie clip). That is easier to do, because it just need to select THE LAYER itself, then MENU->modify->create symbol. Instance name = level1_background. There isnt any action from it.

Finally, the char (peach) on-object action need to reference _root.LEVEL.char instead of _root.char, and _root.LEVEL.ground instead of _root.ground. Done!

Why I insist on this? Because the game will be 200 to 500% faster (in performance)! But as I've said, I'll test here first.
EDIT: 80% completed. Peach still doesnt like the new environment (she falls off the ground like she's a ghost). More tests needed.

In my free time, I will test it here and if you wish, I tell you how to use this code. But please don't take it as mandatory. I don't want you to skip your priorities for this, like glooper animations. Those things I've said here can be just a reference ;)

But I can run the game with no problems. Isn't that good enough? :lol:
Yeah, I'm probably one of the worst people for stress-testing. I only have one system, and I built it to play everything. :ugeek:
That being said, it will probably take me some time to understand all of that.

Allsop2604 Wrote:Just wanted to take some time to praise Blargh. This project is the one that brings me to the forum daily. The amount of content you have added is simply astonishing. Add that with the choices of customization and you have seemingly unlimited hours of possible gameplay. That and I can't emphasize how nice it is to have consistent updates on a bi-weekly basis. I appreciate the effort you put in to make that happen.

Thank you, thank y-.....Waaaaiiitttt a second. Didn't you already give me some praise last week? Oh well. I'm all for stroking my ego. :lol: Though, the unlimited hours might be going a little overboard. ;)

nordicberserk Wrote:YOu guys (Blargh and ivaneader) are AWESOME. your improvements on MiM can only continue to get better. One quick question though; what version is hte lates? I surf through hte forums and see a bunch of pretty similar ones. COuld you help a fan?

Whatever's on my hard drive. But, as Lucky777 says, you can get the last version from a week ago (it's so old now :P ) at the first post on Page 1. (I say it's old, but I've only got like one thing finished for the next update so far. >_> )

ivanaedler Wrote:Explosion Cum -> Water color to Cum color fix.
Blargh, I've found this error and I corrected the color.
If you want, just grab it ;)

You just have, actually, to overwrite the shapes (not the movie clip itself). Anyway, its all in the fla.

It's working as intended? I know it's blue and all, but I have a reason for it....buried somewhere way back in the posts. <_<

EDIT: Let's just get this one in here quickly, since I missed it before.
banmido9191 Wrote:all the shortcut buttons still work. i'm just unable to move.

So pressing 'W', 'A', or 'D', or using the arrow keys doesn't work, but 'C', 'B', or 'M' do work?
Last edited by Blargh on Tue May 15, 2012 6:06 am, edited 1 time in total.
"Is that seriously the end of that story?"
User avatar
Blargh
 
Joined: Fri Dec 10, 2010 3:11 am
Location: Calgary

PreviousNext

Return to Creative Corner



Who is online

Users browsing this forum: Google [Bot]