MS Paint Mini Game Script

CallMeKerrigan

Veteran
Veteran
Joined
Nov 3, 2015
Messages
233
Reaction score
204
First Language
English
Primarily Uses
RMMV
I'm making a not so typical RPG. It is very westernized. 

It's a story about a girl who needs to complete hobbies and interact with other NPC's to level up and keep her HP from diminishing, otherwise you will lose the game. I have many quests and activities already implemented in the game, but one thing I've had my eye on, that I haven't been able to find is a painting mini game, that would be pretty similar to MS paint and very simple. I was thinking that after 'painting' the girl's HP could go up. And an even better feature is if the 'paintings' could be stored in a gallery like Moghunter's picture gallery.

Here: https://atelierrgss.wordpress.com/rgss3-picture-gallery/

I haven't seen a painting mini game script, so I don't think one exists, yet. But I think it's an interesting feature that could be added to a sandbox-like game. Even a game where the player can't explicitly 'paint' but press buttons and splashes of paint appear on the screen randomly. 

I wouldn't mind making this myself if it's simple enough and someone could direct me to a useful tutorial that could tell me how! I'm familiar with ruby and have modified scripts a lot, but I'm a complete noob, also. So, there's that. 
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
Paint can be done by setting up a (round bitmap) sprite that "clone" itself at the position of the cursor when a certain button is being pressed down.

Normally it will require a ruby gem plugin to make a quick paint canvas, but in RM's case, the sprite bitmap system is already there so it can work without a gem i guess.

You can then save the drawn pictures in a folder, and load them in a gallery.

But the problem with RM series before MV is, it's not supporting gpu.

I wonder if it will lag the game dragging a sprite that clone itself all over the screen?

I've made some "smoke trailing effect" in a shooting game before in RMVXA and it significantly slow down the game to a lag when there's more than 20 missiles in the screen. A paint system will require more than that to make line drawings so.. the more complex the picture is, the laggier it gets.

Alternatively:

If you are after dot painting only and don't want to stress the cpu performance without a gpu backup, you can easily make one using a map with tile swap script (i think tsukihime has one), have the player walk over a white tile, press a button to change it to black. And have something like a screenshot script to snapshot it to folder. This is 100% lag-less compared to the actual painting script. :p

All you need is a map that's white, with a few events acting as UI buttons and have your actor move around as a cursor + a parallel event to check button pressed and player's x y.
 

CallMeKerrigan

Veteran
Veteran
Joined
Nov 3, 2015
Messages
233
Reaction score
204
First Language
English
Primarily Uses
RMMV
The dot painting sounds like a great idea! Thanks for your help!
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
You're welcome!
 

Sixth

Veteran
Veteran
Joined
Jul 4, 2014
Messages
2,162
Reaction score
822
First Language
Hungarian
Primarily Uses
RMVXA
You don't need to clone any sprites or bitmaps for this, that IS overkill and not even needed at all. What would be the point in doing so anyway?


You have the 'set_pixel(x, y, color)' method for bitmaps, which will do exactly what is needed for a paint "clone", it will paint a pixel on the bitmap to the specified color.


I already made a paint-like scene with that, but it was a mini-game, not just a paint freely scene. The player needed to follow the edge of a picture with the cursor.


If the cursor got too far away from the edges, the mini-game "HP" depleted, and if the "HP" reached zero, the game ended in a failure.


The cursor leaves the area painted with a color wherever it goes, and if the player manages to draw the edges fairly well, the game will be successful.


The check for matching the edges and the cursor drawn area required a dll for faster processing, but the painting part alone is doable without any external stuffs or complicated methods, and it IS absolutely lag free.


Add in a color selection feature, and you are done with the basic paint "clone".


If you want to add in extra features like circle/square/line drawings, small/big pens, etc, that is doable easily too by using a bitmap extension script/dll (for the shape drawings).


I might just make one Paint scene for you. Don't know when will I be able to do it, but it is something I would most probably enjoy doing, so sooner or later, I will make one.
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
You don't need to clone any sprites or bitmaps for this, that IS overkill and not even needed at all. What would be the point in doing so anyway?
Have trouble understanding what a paintbrush is here don't we?  :headshake:

What you said there is the same as pixel(dot matrix) drawing, not a painting tool. And even that can lag in RM depending on how you implement it.

If that's the case, it will be more fun and creative doing it the way i suggested above as a mini game.

But well... like i said before, you like doing your way rough and unplanned, it's up to you. It's your style of doing things, keep it as you like.

And seems to me ever since, you are trying to pick a fight. But sorry, i am not interested in troll fighting. It's your time, feel free to waste it as it seems you are trying to pick a fight wherever you go. :p
 

Sixth

Veteran
Veteran
Joined
Jul 4, 2014
Messages
2,162
Reaction score
822
First Language
Hungarian
Primarily Uses
RMVXA
It's Paint, not Photoshop. Paint surely seems like it works with pixel coloring (no layers, no advanced blending tools, not even transparency) and for that you don't need to clone sprites.


That is what "MS Paint" stands for in the title, isn't it?


I shared a simple way to do this which is tested by me and works. If that is "picking a fight" or "trolling" for you, than sure, I do that "everywhere".


Rough and unplanned? Exactly why, care to elaborate? Because I don't toss in complicated/unneeded/irrelevant stuffs into my code (or code mechanics explanation) if it is not necessary? Okay.


Don't be paranoid, I am not "stalking" you or anything.


I reply to the topics I find interesting enough. It just happens to be that you are the only one replying in these topics nowadays, so we are bound to bump into each other in some of them.


Yes, we may not do things the same way, but that doesn't mean you should call people "trolls" just because they share a different method of achieving the same thing.
 
Last edited by a moderator:

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Holy stink, where have I been? Well, I started my temporary job this week. So less time to spend on game design... :(
Cartoonier cloud cover that better fits the art style, as well as (slightly) improved blending/fading... fading clouds when there are larger patterns is still somewhat abrupt for some reason.
Do you Find Tilesetting or Looking for Tilesets/Plugins more fun? Personally I like making my tileset for my Game (Cretaceous Park TM) xD
How many parameters is 'too many'??
Yay, now back in action Happy Christmas time, coming back!






Back in action to develop the indie game that has been long overdue... Final Fallacy. A game that keeps on giving! The development never ends as the developer thinks to be the smart cookie by coming back and beginning by saying... "Oh bother, this indie game has been long overdue..." How could one resist such? No-one c

Forum statistics

Threads
105,857
Messages
1,017,018
Members
137,563
Latest member
MinyakaAeon
Top