Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Scripting Contest 1 - Custom Menu System - Contest Ended

Vote for your favorite CMS. (click links to download)

  • Daft_Punk_CMS

    Votes: 2 25.0%
  • Kain_Nobel_CMS

    Votes: 4 50.0%
  • rey_meustrus_CMS

    Votes: 2 25.0%
  • mr_smith_CMS

    Votes: 0 0.0%

  • Total voters
    8
  • Poll closed .
Neither mine nor Kain Nobel's project work from these encrypted projects. Both have issues with locating custom graphics. Are you sure you guys encrypted the projects with the Graphics folder included? I notice you did include mine with all of the example rm2k3 audio, so I'm assuming you did and there was some unforeseen problem.

Then I'm confused about mr smith's. There doesn't seem to be anything special about the menu system, it looks like a demo for basic RM stuff like a package retrieval quest, and some kind of fishing system.
 

Zeriab

Sponsor

No instructions were given telling us that special care was needed when creating the encrypted archive thus making us falsely assuming that we could simply encrypt them normally.
It's good you mentioned this because we missed this serious issue which require a revision of the scores. The user scores still matters so keep voting ^^

Here are versions which work:
http://bb.xieke.com/files/Kain_Nobel_CMS.zip
http://bb.xieke.com/files/rey_meustrus_CMS.zip

*hugs*
- Zeriab
 
Kain Nobel's is messed up... I select Equip, Skill, or Status and it won't leave Basil. It keeps him selected no matter what. Is it supposed to do that?
 

Yin

Member

My vote was swayed by Kain Nobel and Rey_Meuterus (Sorry, if I spelled the name wrong)

Kain Nobel, yours lagged a lot on my laptop, but then again, my laptop isn't in the best shape. I liked all the extra features you included, but my vote is strictly on menu system. I like that you had the crafting in there, but I couldn't use it because I was full on items anyway. Also, the categorized items and the optimized equipment things were very nice additions to the menu. I really wish you had included your config menu, I probably could've seen more versions than just that gold windowskin. Overall, yours was good, but a bit complicated. I loved how the windows came in by the way.

Rey_Meustrus (Did I get it right that time?) Yours did lag for me also, but definitely not as much. I loved how the selections popped up. I also thought your options menu was one of the best I've seen. Only thing that I can think of that I didn't exactly like was the item and skills menu. If the opacity on them were 100% then it would look better in my opinion because the words were hard to read with the other behind it. Your Equip menu didn't work for me. It was missing the files in the pictures folder. I liked the way the status window would kind of fall diagonally off of the screen to show the next person. Overall, I liked yours best and it got my vote (especially with the font on 16 or 14 Arial with the default grey and blue window skin). :biggrin:

Good luck to all of you!
 
I don't know if I should be saying more than is in my submission, but the demo has six party members, not just the four you see. Are the participants to vote?
 
And the results are in... Finally!

We humbly apologize for taking so long getting this done. Thank you all for your patience.
And thanks to the contestants for participating.

The comments below are a consolidation of the judges (and members) feedback.
Scores were averaged & totaled. (Price-Waterhouse was not involved.)

The recent server crash / shutdown hit the Rewind button on the poll. fortunately, I saved the results.
Kain & Rey tied on the vote, and Punk inched ahead of Mr. Smith by half a point at the wire.
Thanks also to those who took the time to download the demos & vote.

Congratulations Kain, I'll be contacting you shortly with your prize info. (I'll post a picture here for all to see.)

Kain picked out this sweet looking "Black Label Society" T-shirt for his prize...

blacklabelsocietytshirt.png


  • 7.5 - Functionality
  • 8 - Documentation
  • 10 - Format
  • 5.5 - Compatibility
  • 19.5 - Structure
  • 5 - Member Vote


Functionality
You have developed a full CMS so means full points.
Unfortunately there are some bugs present:
  • Save game bug due to mouse
  • Gold display update bug when buying and selling. http://bb.xieke.com/files/bug1.PNG
  • The debug menu crashes if no audio folder is present
  • The use of the Dir class to locate graphics resources causes an error when the project is encrypted.

These bugs takes a few points.

Documentation
The commenting is generally fine although a bit lacking in certain areas of the script.
The variable names are generally self-documenting.
There is no installation document and the configuration documentation is a bit lacking.

Format
The structure of your code is fine. It's just like it should be.

Compatibility
The rewrites of classes like Window_Base makes integration into another project harder.
The scripts have the feel of being tailored to a specific system rather than it being a modular system.
The aliases are generally used well and effort have been placed on making the changes compatible is a plus.

Structure
The structure is generally nice and the overall structure is well-planned.
The variable and methods names are good and intuive.
When looking a bit deeper there are some problems in particular in Part IV (Custom Scenes).
For example having a structure $scene.status_window.refresh is a case of high coupling. I.e. not a good thing.
Having it for example as @scene_skill.refresh_status_window with the necessary restructuring is preferable.
But these are nitpicks and the general structure is very good. Excellent done!

Additional Comments
Pretty impressive. You've simplified some of the default modules & methods. Very well documented.
Easy & somewhat intuitive to use. The code is very well organized. Although I didn't see any
detailed configuration documentation, it didn't take too long to figure out how to configure the
system.

  • 8 - Functionality
  • 7 - Documentation
  • 10 - Format
  • 5 - Compatibility
  • 19 - Structure
  • 5 - Member Vote


Functionality
You have developed a full CMS which means full points.
There are some minor non-critical bugs like http://bb.xieke.com/files/fail.png so a point is ducted.
The use of the Dir class to locate graphics resources causes an error when the project is encrypted.

Documentation
The variable names are generally self-documenting.
There is a fine header for each class.
There are areas which are well-documented, but there are also areas with half-hearted inline documentation.
There is no installation nor configuration document.

Format
The structure is just like it should be.
It is weird submitting a script with commented sections, but not wrong.

Compatibility
There are many modifications on existing classes including classes like Window_Base.
This naturally makes the script less compatible. The modifications are generally as small as possible and aliased properly.
The script being split and placed at various sections of the script editor makes integration into other projects more difficult.

Structure
The object oriented structure is very well organized. You make good use of inheritance. There seems to be low coupling and high cohesion. You have improved upon the structure of the default scripts. (At the price of compatibility)
The structure looks solid and the names used for variables, method and etc are fine. Excellent job, you get full marks on this one!

Additional Comments
I like this system. The effects are nice, and not overdone. Party switcher is a little cumbersome, and
causes a small bug with the Battle system. (Acts as if there are 6 party members)

  • 7 - Functionality
  • 4.5 - Documentation
  • 9 - Format
  • 2.5 - Compatibility
  • 15 - Structure
  • 2 - Member Vote

Functionality
The edit to the default menu system works fine and I found no errors. Well done ^^
It only being an edit to the default menu system and not a full cms I have to deduct some points for not fullfilling the requirements.
Status Window: only up & down arrows work, right & left should as well.
Actor select: only 4 of the 7 party members show up.

Documentation
The only comments you have written are the small customization section at the very top.
Other than that it is pretty much only the comments from the original script which is present.
You should write comments for the code you write and update comments to your changes.
There is no compatibility documentation and you have provided no documentation in addition to the script.
I know it is boring, but you just have to bite the bullet and do it because the end result is definitlely better.
Needs better docs in header. Install instructions, feature details, update log.

Format
The general format is fine. Only a few nitpicks. Custom methods are documented well.

Compatibility
You have not at all thought compatibility into you design.
No aliasing
Game_Party add_actor overwritten to provide a new party size. (Which is fine)

Window_Base:
draw_actor_graphic
draw_actor_name
draw_actor_class
draw_actor_state
draw_item_name
All overwritten for no reason what-so-ever!
draw_actor_level overwritten to provide a different color.
draw_actor_hp overwritten to use hp_color instead of system_color. Also makes MaxHP color follow HP color.
draw_actor_sp overwritten in a similar fashion
draw_actor_parameter overwritten to provide an additional parameter. Should only provide the extra functionality and let the rest accessible with an alias.
The additional parameter is never used so there was not a need in the first place!
Re-writing Window_Base for your menu will effect all other windows that use it.

Window_MenuStatus initialize overwritten for no reason what-so-ever!
Window_EquipRight
item
refresh
update_help
All overwritten for no reason what-so-ever!

Window_EquipItem
item
refresh
draw_item
update_help
All overwritten for no reason what-so-ever!
Do not copy an entire class only to change the initialize method!

Scene_Equip
initialize
main
update
update_right
update_item
All overwritten for no reason what-so-ever!

refresh overwritten to accommodate extra parameters

When I deleted all the unnecessary code the amount of code was halved!
This drastically reduced your points in this category.

Structure
Nice idea with adding the colors (hp, sp and lvl) to Window_Base
The way you allowed a different party size is also nice and what you should have done with the rest.
The fact that you copied entire classes and only changed a few methods is a big minus.
Take the minimum you need and nothing more. This is particular important when making modular scripts.
You haven't really changed the object oriented structure, but you didn't really need to, so that's fine.
Followed default scene structure. variable names are intuitive & documented.

Additional Comments
Although mostly a minor change to the default menu, there is a lot of extra code in your script.
To make the status window function like a 2 column menu (all arrow keys work), take a look at the
update methods in the Window_Selectable & Scene_Item classes. This is a great start. Keep
experimenting, and pay particular attention to usability as you develop your designs.

  • 5 - Functionality
  • 3.5 - Documentation
  • 7 - Format
  • 10 - Compatibility
  • 14 - Structure
  • 0 - Member Vote

Functionality
A full CMS is not provided which cuts down in the amount of points.
The provided scene works fairly well, but there is a bug with the quests started going negative. (This is from trying the quest provided in the demo)
Minimal new functionality. Skills menu is a bit plain, redundant & requires unnecessary selection.

Documentation
There are neither headers nor any external documention.
There is virtually no commenting. Some of the little commenting you have is useful, but there are also comments like the main method in Scene_Skills makes the command window.
I know it's tough and boring writing inline documention, but it is a necessary evil.
I can't really help you improve in this area when you clearly have not tried.

Format
The code is not indented properly. This creates readability problems with your scripts.
It is not obvious that Scene_Fishing is an inner class to Scene_Skills. I.e. if you want to change the scene in a script call you would have to use $scene = Scene_Skills::Scene_Fishing instead of just $scene = Scene_Fishing.
If that was on purpose the whole class should be indented to show that it is an inner class.
The commenting is too sparse and the style is not consistent. It's a bare minimum, no actually I would say less than the bare minimum.
The variable names range from bad (e.g. $fxp and $tleft) to good. Generally good.
The indention problem is by far the worst of the problems and is most likely the reason for the inner class issue.

Compatibility
The script is completely stand-alone. It is not plug'n'play, but that doesn't matter from a compatibility point of view.
Full marks here.

Structure
Using global variables to transfer knowledge from a scene onto windows in a scene is not a good idea. Especially when the names for the global variables are so short and not very self-explanatory and even less in a global context. Worse is that these global variables contain information compiled from other global variables. You are basically polluting the global name space for no good reason.
The general menu structure is fine. However a lot of copy-paste is obvious when looking at the different single skill scenes.
As a general rule of thumb copy-pasting indicates the presence of design errors.
I will assume that the various single skill scenes are not templates, but how you actually wanted the skills menu to look like.
All the common behaviour should have been generalized in a single class like perhaps Scene_Single_Skill and then each concrete scene would inherit from that class, e.g. class Scene_Fishing < Scene_Single_Skill
I find the idea of the single skill scenes being inner classes to Scene_Skills intriguing. By this you indicate that only Scene_Skills should be set as scene from outside classes. This also makes your global variable use less horrible.

Additional Comments
Coded well & it functions as designed. The design is simplistic. The data provided for each of the
skill areas is too minimal to require another window for each skill. Requiring the user to select a
separate menu item for a few small tidbits of information is redundant.

Once we get the server snafu situated, we'll work on getting another contest going.

Be Well
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top