Discussion in 'Code-Off Challenge' started by ??????, May 30, 2014.
Don't know if ideas are still being accepted or not, but a lockpicking script would be useful.
Basically, what would happen is you have two kinds of locks, one in which the lock is triggered by a specific pattern in a key, but a lock pick pushes on the 'sweet spot' and unlocks a 'lock tier'. When all lock tiers are done, the lock is unlocked. An example of something like this would be found in the Thief: Deadly Shadows game. The other would be more like a modern lock, in which there are 'pins' on springs which, when in alignment, can be unlocked. A lock pick, or a bump key (A key designed to unlock any modern door with a hard tap with a blunt object) would be used to set the pins in alignment.
The major thing with the script would be that visuals could be set. If you wanted people to see how the lockpicking progresses, then they could do so, though they could also attempt to go with a purely auditory version where you have to listen closely to determine whether a pin is locked in place.
Thanks, I didn't know that existed.
A surprising number of people are deaf, either wholly or in part. Also, some people play with the sound turned off/down because of the circumstances in which they are playing, so I'm not sure that a purely auditory version would be a good idea.
I would like to suggest a script that allows passive skills to work on a success chance based on a percentage. That percentage goes up with points you earn with leveling up and you can pick and choose what skills to put those points in.
An example would be...
A actor has a skill at 15% and when presented with opportunity for using that skill a random number from 1-100 is rolled. If it is 15 or lower the skill is a success, otherwise it fails.
This might apply better to non-combative skills, but I guess I would leave the finer details up to the scriptwriters.
Why not a stat distribution script? Players always differ in the way they approach a problem. Some of them prefer to have powerhouses, while other like having a balanced party or even tank units. And this is possible if you get stat points to distribute, instead of getting level up stats (disabling them could be as easy as leaving level up stats on 1 in the class section). Or maybe combine them, you get some level up stats, but aswell some stat points you can use as you like. In a way, this makes the player feel guilty if his/her party doesn't work well, and not blame it on the developer. However, it should also allow to reset the stat points (in a controlled way, charging money to reset all or to reset a bit, or having only few chances to reset the stats), in case the player messes something up.
How about a Combined Skill script?
This would be like Chrono Trigger ---- a single, powerful Skill requires multiple party members to participate in the Skill to activate it. For example:
Destiny's Blade - Requires 20 MP from Actor #1, 30 MP from Actor #2. This also means the skill will take Actor #1 and Actor #2's turn in battle. And the skill requires Actor #1 to have 20 MP and Actor #2 to have 30 MP.
The combined Skill would execute whenever the slowest of the combined Actors (or Enemies) would execute the Skill. In the above example, if Actor #1 has an AGI of 200 and Actor #2 has an AGI of 100, the Skill would execute whenever Actor #2 would have his/her turn.
Ideally, this script would also allow enemy Troops to do the same thing ---- so the Demon God and his minion can combine their magic to cast Hellfire.
Obviously, if a Skill is selected, but a participant is or becomes in any way unavailable (i.e. paralyzed, dies, whatever) before the Skill activates, the Skill cannot execute. This allows enemies (or players) a chance to disrupt the skill before it completes, if they are fast enough.
If the script is done well, it should work within any battle system.
EASY is the keyword.
I consider myself to be a reasonably good scripter, and I shudder at the complexity of some of these suggestions. We're after things that will encourage MORE people (and people who have less scripting experience) to join in.
If you want such a script for your own game, post in the Script Requests forum. If you get a good number of people joining in on the discussion and talking about best approaches (and coming up with ideas, not just obstacles to be considered), and a few saying they'd like to try it, THAT script idea would be a GREAT candidate for a code-off challenge, as obviously people find it intriguing, challenging, but not too daunting.
This can be somehow remedied if there are some such existing scripts, as even a less experienced scripters(like me) can learn at least something from them.
For example, if the next code off challenge is a stat distribution script, we(not just less experienced ones) can learn from some such existing scripts:
(Of course Dekita's one's just outright insane lol)
Off topic: I'd doubt if anyone can beat Dekita for this one
In case of a Combined Skill script, I'd suggest studying Victor's Cooperation Skills and Moghunter's ATB System(as it has a cooperation skill feature):
Sure, the former's designed specifically to an animated side view battle system while the latter is a part of an atb system, but we can still learn something from them about how good combined skill scripts can be written.
Those wanting to know how a combined skill script shouldn't be written can study mine(although it's completely stand alone):
They'll quickly find that it's just a complete mess in terms of implementations even though it still works XD
As a disclaimer, I'm not saying that suggesting something really hard(like writing a SBS from scratch) is good for the challenge, but maybe sometimes it's also hard for idea givers to realize the difficulty of their suggestions
For suggesting ideas for code-off challenge, I'd say that maybe a script mimicking Warcraft 3's Devour Magic will turn out to be interesting yet not so hard as well. I call this Consume Buff/State for now.
Translating that into RMVXA, maybe a skill can consume all targets' states, buffs or debuffs, and each will give the user some hp, mp or tp and their details can be specified by each state, buff or debuff.
This can turn out to be an interesting trade-off if a skill only consume negative states and debuffs. The users can gain some hp, mp or tp, but the targets will be free from those negative states or debuffs.
This can also be applied reversely. Maybe a skill only consume positive states and buffs, but each consume will indeed reduce the user's hp, mp or tp. That can be another interesting trade-off.
Actually I'm writing such script myself and for me(a nub scripter) it's much easier than "improving" an ATB script(it's driving me mad already), so I hope(subjectively) it's easy enough to be included in the code-off challenge.
Hey guy, sorry been hella busy recently - which is why I havent been as active as normal.
Anyway yea... Those suggestions are a little OTT for what we are trying to achieve. Part of the reason I have not begun the next code-off is simply because of the lack of participants in the previous contests. And if we just kept doing complex scripts I dont think the participant count would increase anytime soon.
It seems the only way people enter is hen they truly believe they can win. Rather than using it as a learning experience. That imo, is suboptimal.
Uhh yea anyway...
I will be stopping the current vote soonish and when I do, I will be selecting a handfull of the 'simplest' script suggestions for people to vote on for the next code off.
The distribution script idea may/may not be added into the list. I mean, yea, I have previously written crazy distribution scripts, but there are features mine does not boast. Also - I do have an idea for another distribution system but uhh....
Not really sure it would be fair - like, is the script was a disti system and I was to enter, I would feel like I had an unfair advantage over everyone else, simply cause I have written about 5 different disti scripts (only 2 have been released for use, 1 was used in my IGMC game - EUA). Like, my first ever script was a disti script (PSPDS) and I can confirm it being a great learning experience...
Uhh yea, kinda went on a rant there...
Also - random comment... I cant fin my ISPDS thread anywhere on these forums... Wonder if I forgot to post it all those years ago
Please only suggest simple scripts. The reason for this is because it can VERY EASILY put potential entrants off when the suggested scripts are too difficult.
At the end of the day - I'm not gonna just let this event turn into another script requests forum
I think that is a problem. The best way to learn is to challenge oneself after all. That is why I do not join, for the scripts are too simple.
If only there could be a easy and hard section with the hard section given more time in the contest.
Scripts are only as simple / complex as you want them to be.. I mean, a script that - I dunno - changes how text is displayed, you could make that as complex as you wanted. MY text handling script (not released) uses an image reel to determine what to show for each text character. It also Cache's all text so that drawing text is very fast (much more than default - perhaps even faster than mithrans text cache (havent tested)) - then, it allow for me to determine spacing for every single letter. Also allows for me to have 'hue bounce text' - a seen in spoiler...
Anyway, point is, scripts are only as complex as you - the writer - wants them to be (unless your doing a commission or something and the commissioner wants more complexity an you cant be bothered )
Also, the easy/hard category thing is something we wanted to add, but obviously we cant do that when only 2/3 people are participating in total. :'(
Here is a suggestion which I believe starts off simple, but then there are a couple of things which could be added to make it more complex if the scripter wanted.
A way of keeping count of how many enemies have been killed by each individual character. (Someone has done that for me and said it was simple, so I take his word for it.) Totals displayed by calling them through an event.
How many were killed using a physical skill, and how many by using a magical skill
Instead of having to call that total, have it as a running total on the status page of each character. Ideally this would be compatible with Yanfly's Status screen script which is used by a lot of people, as well as in the default status screen.
That is a great suggestion imo.
From my initial thoughts, there are quite a number of ways such a feature could be implemented.
What script suggestions would be considered easy or hard? Some of us who are not script writers (or just started to learn in my case) don't know what would be considered a hard script to write.
In my suggestion. I came across the idea when playing rifts (the book game not the online game) All the skills and weapon proficiency in that game are based on a success chance with a percentage that goes up every level. I have no idea if that would be a hard or easy script for you guys to do but I thought it was a good idea because I've never seen a suggestion for that type of script before in this contest. As far as I could tell it fits the guidelines mentioned in the rules.
If it is easy then the scriptwriter could add the option of distribution for added challenge.
However, if this suggestion does not meet with the guidelines (too hard) then I withdraw my suggestion. Perhaps some additional guidelines in the list of rules for those of us that wouldn't know the difficulty of our suggestions. for instance, what makes it too hard?
I still think there are a lot of really great suggestions and I cant wait until I am knowledgeable enough to enter this contest with the rest of you.
I will have a think and try and come up with some stronger guidelines for the suggestions.
An easy (kind of) way of figuring out if a script is hard or not.. If there are lots of similar scripts - its probably an easy-ish feature. If there is no script with the suggested features, chances are it is too specific or too complex.
That being aid, we dont want to just rewrite scripts other people have already written, just cause thy are deemed 'easy'
I think it's difficult for non-scripters to judge how easy/hard a script would be. Not aiming this at anyone, but a lot of people seem to have an "if I can say it in 10 words or less, then it must be easy" attitude (based on what I read sometimes in the script requests forums). It's kind of - if you can see it in your mind and it's clear how things work, then it should be easy to accomplish. But that's not always the case. Sometimes you can see it in your mind because you HAVE seen it in a game somewhere and to you, the player, it just works well, and you don't have to think of the complexity of the system that makes it happen.
Probably the only way you'll know is to go ahead and suggest it, and wait to see if a scripter says it's easy or hard. And we should try and remember that the suggestions are being made by people who don't script and who don't understand how complex it might be, so we don't cause offence when/if we say it's too hard. And maybe elaborate on the things that make it too hard, to help you understand why.
ksjp's suggestion is a really good one! Except the part about being compatible with Yanfly's Status screen ... it's a condition of this challenge that scripts here do not require other systems, scripts, cores, in order to work. But we've talked about this sort of stuff before, and the decision is if you WANT to make it compatible with other scripts, that's okay, but it must be able to run without those other scripts. - in other words, you can make it to work with those other scripts, but they must not be required - it must work just as well without them.
For a "beginner" scripter suggestion, what about modifying/extending all the things you can do in a Show Text command? That could be as simple as a few extra lines added to a single method, or as complex as they want to make it.
Personally, it's only lack of time that stops me entering these. I would love to have joined in on the previous ones - despite knowing mine would come last in any voting. It's not about who wins and who doesn't (for me) - it's about trying to come up with new/better ways of doing things, and getting feedback to help further improve my skills.
Oh for sure.
Imo, the 'winning' is 100% irrelevant (not just saying that cause I have not won ) - Its all about the learning.
From the past two challenges, I have learned an absolute 'buttload', not just things related to coding ruby, but also learned a few new tricks that can be adapted into most coding languages. - for me, that is much better than any kind of 'winning' would be
Also, I thought ksjp's suggestion was bang on point for the kind of suggestions we need. Things that are simple yet can easily be made considerably more complex...
By the show text command, do you mean the script to add new escape codes or something? If not, I'm confused
The difficulty of scripts is somewhat dependent on the scripter as well. Some scripts will just flat out be hard to do... but some of the suggestions sound very hard to me because they deal with parts of the game engine that I'm not overly familiar with. It's also not about winning for me.. I've got to say that the first challenge was by far the hardest for me and a learned sooooo much from it and my coding has improved a lot for it. I know both the other guys that have been in the previous challenges are much more experienced coders then I am, so I was over the moon that I got a vote for my coding in the Bestiary challenge
But I'd suggest entering to anyone that's learning or still not confident in their coding because you do learn a lot and everyone gives constructive feedback. Hell even the people that don't need the practice, it's good reading your code too because that's where half the learning comes from. Since everyone is working on the same basic concept it shows you the different techniques that can be used and the variety of ways to code things.
I learned to code from looking at other folks' scripts. So looking at Dekita's code makes me think more because he doesn't always stick to the same patterns everyone else does. And FenixFyreX puts a lot of working into commenting his code so you know what/why he's doing stuff. Sometimes he does code just to show off ways to script.. like the meta programing in the first challenge and the structs in the 2nd challenge. So IMO the challenges are just a invaluable learning tool. The first challenge was way outside of my comfort zone so I learned a lot more from it then the later one (which was in my favored area of scripts - menu systems).
God I feel like such a fanboy.. but I really can't say enough good things about my experiences in the challenges.
edit: Forgot to mention.. that the feedback from non-coders is good too as it lets us know what features are desired in scripts or what's not really needed. I know I get in the habit of over doing stuff which can over complicate a scripts set up and this is sometimes off putting to some folks, while for others it's a selling point. So I'm trying to learn the balance between the two
I'd second what Venka says. I tried to enter the last challenge, but was unable to get more than a bare-bones script before the deadline (was hung up on how to display the monster picture on the screen). But, I did learn quite a bit in how far I got, even if I didn't finish, so my advice to those just reading this...give it a shot anyways. Sure, you may fail and not finish, but you will still learn something in the process.
Yes, new escape codes is what I meant.
@bgillisp, remember you don't have to do it alone. If you can't figure out something you need to do for the challenge, it's okay to ask for help in the Script Support or Learning Ruby & RGSS forums.
Separate names with a comma.