Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - chaucer

Lexima Legends - Paths of Strife / Re: What is this?
March 05, 2018, 02:14:05 am
:o This sounds awesome! Unfortunately for me, I'm quite busy till the end of the month, but if you're in need of people by the time I'm free, I would love to help out on this project! If I'm being honest though, I don't have a whole lot to offer, in terms of game development, I don't do music/artwork/story/dialog, not that I don't want to, it's just I'm honestly terrible at all of that stuff ^^; I'm ok at writing code though( not limited to just JS ), that's about the only thing I can offer.

games :
Starfall ( wrote the majority of the code used for this game ).
Kanti Nida ( wrote the pixel movement & battle system ).
Revere ( still in development, almost finished though! wrote quite a good sized chunk for this game as well ).

plugins :
Resolution Plugin
Scene Stabalizer

If you're interested in contacting me, you can pm me here, or contact me through any of the below methods, or just respond in this thread too, xD I may not post much, but I'm always around lol.

rpg maker web :
discord : chaucer#7538
skype id : chaucer1991
email :
RMMV Script Database / [MV] Chau Scene Stabilizer
February 06, 2018, 12:38:32 am
Authors: Chaucer
Version: 2.0.0
Type: Scene Stabilizer
Key Term: Game Utility


This This plugin is designed to make transitions between scenes smoother. When changing scenes in mv, theres a slight lag spike
which occurs when loading files & rendering images, this is more apparent in games which use large images, or lots of images, This plugin will pause the game from updating until all elements in the scene have been loaded AND are ready to be rendered. I seen a few people on the forum bring this issue up, so I decided I'd try to come up with a solution, unfortunately I've been a bit busier than expected, so it's taken me a bit longer to get around to this than I anticipated.​


  • Transitioning between scenes is much smoother.

  • Options to wait for scene to stabalize when loading animations and pictures.

  • Option to preload audio for map/battle/title, before scene is loaded.




Dropbox Download




None that I know of.

Credits and Thanks

  • Chaucer

  • Oscar92player @ RMW forums, for suggesting adding audio preloader & helping to debug it.

Author's Notes

Terms Of Use :

  This Plugin may be used commercially, or non commercially so long as credit
is given, either in the games credit section, or in a text file alongside
the game. This plugin may NOT be sold, or Plagiarized. This plugin may
be extended upon, and shared freely.

Version History :

● Version : 1.0.0
● Date : 13/01/2018
   ★ Release.

● Version : 1.4.0
● Date : 17/01/2018
   ★ Added the option to attempt to stabalize animations.

● Version : 1.5.0
● Date : 17/01/2018
   ★ Upload Animations to GPU before playing.
   ✩ Fixed issue with picture stabalization.

● Version : 1.5.1
● Date : 17/01/2018
   ✩ Accidentally deleted code to shorten pause time.

● Version : 2.0.0
● Date : 17/01/2018
   ★ Added preload function for BGM and BGS( map, battle & title scene only ).

Contact Me :

  If you have questions, about this plugin, or commissioning me, or have
a bug to report, please feel free to contact me by any of the below

rmw :
patreon :
chaos-project username : chaucer
discord : chaucer#7538
skypeId : chaucer1991
gmail : chaucer91


Sea of Code / Re: Help With Seperating Axis Theorem
December 24, 2017, 04:30:53 am
Just wanted to stop by and say thanks again for the help everyone, I thought I'd post an update on my progression on this topic.

Spoiler: ShowHide

I know it's not really perfect in terms of physics, however I still intend on continuing studying this path, I've also kind of developed my own method of collision detection for polygon x polygon collison, since none of the methods I'd found were to my liking, as I wanted the ability to use convex & concave shapes, I also didn't want to limit the shapes to be reliant on being clockwise/counter clockwise, so I managed to come up with my own form of collision. If anyones interested in the code( it's in javascript ), I'd be more than happy to share it. Infact I'd be interested in hearing what others with more experience haveto say about it. I know I more than likely wouldn't have been able to get this far without outside help, so again, big thanks for the help. :)

Also hope everyone has a great holiday weekend. :D
Sea of Code / Re: Help With Seperating Axis Theorem
April 21, 2017, 07:05:59 pm
Haha, after you said.
QuotePersonally I find this collision equation better suited for things like hitboxes, not so much physical, interactable objects.

I started thinking about different ways to detect collision, and i came across a video to do with line segments, and line collision( from dev tigris on youtube ), and it hit me, xD it's funny cause I've known of raycasting for so long, but never actually looked into it, or how to use it, but from what I watched on that video, it seems like that's exactly what I'm trying to accomplish, just much less math( and headache, haha ). I'm still intending on finishing my studies into SAT, however I think I may use raycasting for my game( but it's good have options ).

Also wow, this tutorial looks a lot more in-depth, I kinda just skimmed it for now, I'll have to sit down and read through over the weekend when I have some free time. Thanks for the link brother!
Sea of Code / Re: Help With Seperating Axis Theorem
April 20, 2017, 10:03:55 pm
Thanks Blizz, and KK20 much appreciated, and thanks for the description of what was happening on that line, it's much clearer to me now. I'll be sure to double check my functions, I'm quite positive, the dot product, is working as intended, however I'll double check my code, I'm sure I've got something mixed up somewhere, I was questioning my noramlize method, as I wasn't entirely sure it was correct, so that may be it. Also thanks for the instructions on handling the collision I think I may have skipped this line in the tutorial somehow .-. but the way you put it it makes sense.

As for it's use, I'm not really even sure I'm planning to use it xD as I'm really mostly using this for learning purposes at this moment, I am hoping to implement more detailed collision system into my game though ^^ I appreciate your advice and I'll definitely keep this in mind, in reality square vs square is really all I was looking to use out of this, but I kinda got carried away with learning how it worked haha.  :^_^\':
Sea of Code / Help With Seperating Axis Theorem
April 19, 2017, 11:01:18 pm
Hello, been a while since I've posted anything, I know this isn't specifically code related, and mostly math related, however recently I've been looking into seperating axis theorem, I've found several tutorials/explanations online, and to be honest, I cant exactly understand how all the math works(yet), but I do understand what it's doing. I've managed to successfully implement detection with rectangles, however I'm still having difficulties with a couple things, and I was hoping someone here could help give some insight into the situation. ^_^

My first problem is, for some reason I can't get collision between a circle and a square to work properly, I've found a tutorial which seems to cover it but whenever I try to implement it the results are incorrect, the tutorial can be found here. The math for circle/square collision is at the very bottom, I also have the same issue with polygons, I've tested with a simple rectangle and a square and again, it seems the math just isn't there, you can find the code for circles and polygons below( please note the code used is ES6 ).

Rectangle  * Polygon collision.

collision( a, b ) {
      var collided, corners, axes;
      collided = true;
      corners = [ a.points, b.points ]; //push all the normals into an array.
      axes = this.getAxes( a ).concat( this.getAxes( b ) ); //get new axes based on the normals
      for ( let i = 0; i < axes.length; i++ ) { //iterate through the axes we need to test.
        let axis, p1, p2 = 0;
        axis = axes[i];
        p1 = this.getProjections( axis, corners[0] ); //projections along the new axis for our first shape.(an object with min and max value).
        p2 = this.getProjections( axis, corners[1] ); //projections along the new axis for second shape.
        if ( p1.max < p2.min ) collided = false;
        if ( p2.max < p1.min ) collided = false;
        if ( !collided ) break;
      return collided;

Rectange * Circle Collision.

rectCirCollision( a, b ) {
    //a = rectangle, b = circle
      let circle, max, corners;
      max = -Infinity;
      corners = a.points; // get all the normals of the rectangle.
      circle = new Vector( b.x -, b.y - ); //create a new vector with the angle between the rect & circle.

      for ( let i = 0; i < corners.length; i++ ) { //iterate through the normals.
        let v = new Vector( corners[i].x -, corners[i].y - ); //new vector with angle of the center of triangle to each corner.
        let proj = circle.normalize() ); //get our projection based on the circle vector as a unit vector.
        max = proj > max ? proj : max; // set our max distance.
      if ( circle.magnitude - max - b.radius > 0 && circle.magnitude > 0 ) { //not exactly sure whats going on here, got this code from the tutorial linked above. xD
        return false;
      return true;

My other question is I'm not entirely sure how to handle collisions once they happen. I didn't find much info on how to push the collided sprite outside of the collision area once it's collided. Anyone know a good tutorial that could help with this? or have any advice on the matter? :D any help is much appreciated. thanks in advance. If you need more code just let me know, if you'd like i can post all the code i've written thus far. ^^
Projects / Games / Re: Shave the World
July 11, 2016, 07:42:49 pm
Haha thanks for the move, also forgot to mention the controls, arrow keys move, z jump, x shaves, and shift is a high powered can of mousse you can use to dash across the screen,  you can wall slide/ wall jump by jumping into a wall and holding the direction forward, which is missing a graphic, and also needed to progress.

Much appreciation to anyone who tries it out, id love to hear how other people think it plays! :D
Projects / Games / Shave the World
July 11, 2016, 03:26:26 pm

It's another average day in Retro City, the birds are chirping, the sun is shining, and people are being transformed into hairy creatures and going on a rampage?! For some reason people are being taken over by the hair on their head, they seemingly are driven by a single goal, find and infect everyone they come across! Within hours the plague consumes seamingly all of Retro City, but hope is not lost yet, On the outskirts of town, theres an unlikely hero. The Odd barber with, a compulsive urge to shave people bald. Will our unlikely hero be able to shave the world?

• Awesome Pixel art graphics with a cartoony feel.
• An incredible soundtrack that will put you in the mood to shave.
• Hair raising action in Metroidvania style gameplay with it's own unique style.
• A variety of tools at your disposal range from giant straight razors, high powered blow driers, a giant high pressure mouse can and more!
• Several unique modern stages, like an electronics store, the super market and even the city itself.
• Lots of bad hair related puns.
• Several different game modes, ranging from easy - hard, for story mode, time attack and boss rush.
• A score system which will keep track of your best run on each stage as well as an online scoreboard to compete with other players high scores.

The Barber : 

Ever since he was little he's always been a bit odd, he never had any friends for long, due to his compulsive nature to shave them bald. His only friend growing up was the family dog, who he would chase around the yard to try and shave him. The dogs name started out as Rex, then turned to Patches, and then Baldy. When the barber grew his mustache, he claimed it could talk, everyone thought he was crazy but the barber's mustache often gives helpful advice that can help in hairy situations.

The Stylist :

An air headed klutz who while growing up, her parents had little hope for, at least until she got her hands on a pair of scissors, frightened at first, but soon they realized their daughter was a talented hair stylist. Her haircuts would always come out artful and unique, at least when she didn't space out and shave the person bald, she barely managed to get her cosmetology license, despite being the star pupil of the class. Her business didn't last long either, after balding half her clients due to forgetting what they asked for, but now that the worlds completely taken over by hair monsters, theres no one left to complain about a bad hair cut, so she sees this as her opportuity to make a comeback in her career.

Spoiler: ShowHide

Currently this is a very early demo, there's no actual story, or level design, it's just to get feedback on the games mechanics, attacking, jumping etc, any feedback is much appreciated :D

Credits :


ConkerMich - Artwork


jcbrickston - Music & Sfx


Yanfly - Screen Resolution Plugin
RPG Maker Scripts / Re: MV bind sprite to map.
January 29, 2016, 01:42:10 pm
Ok, I think I get what you're saying so I tried to apply it, it seems to remove a lot of the "bounce" however it's still quite noticeable, basically here's what I've done I feel I'm on the right track, but just missing something, again. I'll write comments describing what each one is since I've only shown a small snippet, and again much thanks for the help. I'll make sure to notify you if I find the solution before I get a response. xP

//checks if player is pressing up
if (this === player && !this.isMovingY()&& this.jumping && this.getInputDirection() === 8) {
                                                //jumpMove: temporaty variable to apply to the shadows Y.
                                                //this.orgLandLoc: original designated shadow Y location which is only applied once, when the player starts his jump.
                                                //this.landLoc: this is the landing location(does not effect the sprite, only where the player lands on the map.)
jumpMove =  ((this.orgLandLoc * $gameMap.tileHeight()) + 42 - (this._y * $gameMap.tileHeight() + 42)) / 2;
this.landLoc = this.orgLandLoc - ((this.orgLandLoc - this._y) / 2);
                               //applying the temporary variable to the shadow location.
                               this.shadowY = this.mapzero - $gameMap._displayY * $gameMap.tileHeight() - jumpMove;

:facepalm: completely missed what you said about $gameMap._displayY that makes it smoother, now I just need to find the right math to apply. lol

Edit: Figured it out :D it may not be the most elegant solution, but it will work.
RPG Maker Scripts / Re: MV bind sprite to map.
January 28, 2016, 06:46:09 pm
:facepalm: Unfortunately even with the help I can't seem to figure out how to make the shadow follow the player if moving up/down, math was never my strongpoint. :/ well I can actually make it follow but I can't seem to make it follow smoothly, it just sort of snaps, I'd been trying since morning and haven't been able to make it work, this was the best I'd gotten it. (placed this inside the else block.)

//checks if this is player, and it's jumping, and pressing up,
if (this === player && this.jumping && this.getInputDirection() === 8) {
                                        //change the landing location if pressing up
                                        // landLoc is just the players _y location created only when player begins a jump.
if (this.landLoc - this.moveSizeY  > this._y) {
this.landLoc -= this.moveSizeY
if (!this.mapzero || this.mapzero !== (this.landLoc * $gameMap.tileHeight() + 42)) {
this.mapzero = (this.landLoc * $gameMap.tileHeight() + 42);
this.shadowY = this.mapzero - $gameMap._displayY * $gameMap.tileHeight();

Thought this would work, but I'm still apparently missing something. any help would be greatly appreciated, :D lol this should be the last difficult part of this plugin, so I should be fine after this, I'll keep trying this myself and let you know if I find a solution.
RPG Maker Scripts / Re: MV bind sprite to map.
January 28, 2016, 09:37:19 am
perfect! this works perfectly, removed the bouncing effect from the map, many thanks bro.
RPG Maker Scripts / Re: MV bind sprite to map.
January 27, 2016, 10:19:56 pm
Apologies, I should have checked the video before uploading, didn't realize it's barely noticeable =/ and I'm fairly certain it isn't the case, as the X and the Y are updating at the same time, and only the Y is bouncing(the X moves perfectly along with the player). I think the problem is that the player's Y is changing in small increments, where as the shadow's Y is changing in larger numbers, I've found if I use the code below it stops the bouncing from occurring, however it bounces when the player is dashing with this same code. I wouldn't mind using this, except it continues moving in that direction(which can be fixed with a simple if statement same with the dashing), the only thing is that if the speed is changed to be something other than the default value(3), then i'd have to write out how it increments depending on each possible speed.

(this.shadowY += 1.5)

I'mfairly certain the solution would be to get how many pixels the player moves each frame, and tell the shadow to update by that as well, I tried using this code below(which I got from updateMovement in game_CharacterBase), and it works, kinda, except any way I try to apply the math it seems to not read the correct location.

// this is the original
this._realY = Math.max(this._realY - this.distancePerFrame(), this._y);
//here's what I tried.
this.shadowY = Math.min(mapzero + (this.jumpLoc * 48), this.jumpLoc * 48)

this code keeps it from bouncing, but the calculation just is off, >.<; I feel I'm just failing the math at this point, but I'm not entirely sure. Apologies hope this reply made sense, been a long day.
RPG Maker Scripts / MV bind sprite to map.
January 27, 2016, 08:21:06 pm
Hi everyone(been a while :P) I'm in the process of writing  a plugin, however I've run into a minor problem which seems to be setting me back. basically I've added shadow sprites below the character, however under certain circumstances I'd like the shadow sprite to be bound to a map Y location and not a screen Y location, now I've managed to accomplish this, however I seem to get a minor issue, the shadow seems to bounce around every time the player moves, I'm not exactly sure how to solve this issue though, I'll leave a video and the code used below.

Video of the problem :

Code used:

Spoiler: ShowHide
//create shadows
var spriteShadows = Spriteset_Map.prototype.createCharacters;
Spriteset_Map.prototype.createCharacters = function() {;
this._characterShadow = [];
for (var i = 0; i < this._characterSprites.length; i++) {
if (this._characterSprites[i]._character._characterName !== '' &&
this._characterSprites[i]._character._characterName !== "Vehicle") {
this._characterShadow[i] = new Sprite();
this._characterShadow[i].bitmap = ImageManager.loadSystem('Shadow1');
this._characterShadow[i].anchor.x = 0.5;
this._characterShadow[i].anchor.y = 0.9;
this._characterShadow[i].z = 10;

//updates the shadows.
var updateShadow = Spriteset_Map.prototype.updateShadow;
Spriteset_Map.prototype.updateShadow = function() {;
var _party = function() {
var list = []
return list;
var characters = this._characterSprites;
for (var i = 0; i < characters.length; i++) {
if (!this._characterShadow[i]) {continue;}
var chara = characters[i]._character;
if (chara.characterName() == "") {
this._characterShadow[i].visible = false;
if (chara.constructor === Game_Vehicle) {
                        //used to update the shadows location(which is where the problem seems to be.)
this._characterShadow[i].x = chara.shadowX;
this._characterShadow[i].y = chara.shadowY;
this._characterShadow[i].z = chara.screenZ()-1;
this._characterShadow[i].opacity = characters[i].opacity;
this._characterShadow[i].visible = characters[i].visible;

        Game_CharacterBase.prototype.updateShadow = function() {
if (undefined !== this.shadowX && undefined !== this.shadowY && undefined === this._altitude) {
this.shadowX = this.screenX();
if (!this.jumping && !this.falling && !this.climbing) {
this.shadowY = this.screenY();
} else {
                                        //here's where the problem is.
var mapzero = this.screenY() - ((this._y) * $gameMap.tileHeight);
if (!this.jumpLoc) {
this.jumpLoc = this._y
                                         //calling this does keep the shadow from moving with the player, however it bounces when the player moves.
                                         //I'm aware of why, unfortunately just not sure how to fix it.
this.shadowY = mapzero + (this.jumpLoc * $gameMap.tileHeight);


If I remember right there was a guy who resized them previously, Working on the Game Astyanax, his game thread seems dead and he hasn't been on in this forum for a while, but he's on a few other forums as well u could check there to see if he's still active. If not I could probably do this but it's going to take some time... I'll be pretty busy for the next few months but I'll be able to work on in it in my spare time, possibly, did you want them just resized? or RTP style. also how big do you want them exactly.
RMXP Script Database / Re: [XP] Weapon Charge
May 22, 2015, 06:23:16 am
Script Updated.
-Added an option to choose wether sprite uses weapon type for extension.
-Added option to choose your own name for the sprite extension.
-Cleaned up code and removed unnecessary clutter, and possible performance issues.
-Fixed 2 possible issues I didn't notice before.

Script Troubleshooting / Re: Skipping an Event
April 01, 2015, 12:56:50 am
ah man, I was looking where it was freezing the input but couldnt seem to find it, also I knew there was a way to call interpreter already!(just couldnt figure it out) :( I feel I overcomplicated this, big thanks for the help though, much appreciated, I've been struggling with this for quite a while lol.
Script Troubleshooting / [Resolved]Skipping an Event
April 01, 2015, 12:09:08 am
Hey all, I'm trying to create a way to skip certain events processing, I've created a small add on inside of interpreter class to exit the event processing, I can't seem to get it to work though and it's sort of begun to annoy me haha, so thought I'd ask for some advice here. So far what I have will close out any chat box that is opened, however your character remains frozen and I'm not quite sure how to unfreeze him at this point. I'm using default message systems, I'll post everything I've coded so far.

this is inside Window_Message Class

#skip if movie
     if $game_switches[8] && Input.trigger?(Input::Key['Esc'])

which leads to terminate scene(exact same as terminate_message except 1 change)
Spoiler: ShowHide

def terminate_scene = false
   self.pause = false
   self.index = -1
   # Clear showing flag
   @contents_showing = false
   # Call message callback
   if $game_temp.message_proc != nil
    # $game_temp.message_proc <<<<
     @intr =      <<<< Only Changes Made
     @intr.command_exit(15)     <<<<
   # Clear variables related to text, choices, and number input
   $game_temp.message_text = nil
   $game_temp.message_proc = nil
   $game_temp.choice_start = 99
   $game_temp.choice_max = 0
   $game_temp.choice_cancel_type = 0
   $game_temp.choice_proc = nil
   $game_temp.num_input_start = 99
   $game_temp.num_input_variable_id = 0
   $game_temp.num_input_digits_max = 0
   # Open gold window
   if @gold_window != nil
     @gold_window = nil

which then calls exit event command(everything commented out is what I've tried to this point)

 # * Exit Event
 def command_exit(event_id)
   # Clear list of event command
     $[event_id].list = nil #List is set to accessor & not reader
   # If main map event and event ID are valid
  # if $[event_id].id > 0
     # Unlock event
     # erase event

so... any thoughts? I've also tried just using the event loop command, that's what I had orginally planned, however it don't seem to work for some reason, so kinda stumped on that one too.
Intelligent Debate / Re: Capitalism
March 06, 2015, 09:35:20 pm
Indeed, value is relative, but I have more faith in Humanity than to think we value "entertainment" more than we value necessities, although coal is not a necessity, however it does in part contribute to a lot of what we take for granted today.

    (Slightly off topic, apologies in advance) I feel this is more the doing of the media, than human stupidity alone, although it's to blame too. How Many times do you see a trailer for the latest movie in one day, compare it to how many times you see an add for coal. The Idea that this movie, candy, or alcohol brand is important is slowly being pushed into our head while coal sits on the back burner. It's not just TV ads either, go outside, to the store, to the mall, you'll probably see ads for that same movie there as well.
so basically, the menu is working right? You just want to be unable to move when the menu's open? I'm pretty sure Blizz-ABS has a freeze input option, try searching your script database for freeze input and see if you can figure out how it works.
Script Troubleshooting / Re: RMX-OS Problem Save
March 06, 2015, 08:58:51 pm
This problem doesn't happen to me, i tried setting up a new client and everything works normally, not sure what's affecting your game so I can't really help. Sorry.