KirieZ
-
Content Count
211 -
Joined
-
Last visited
-
Days Won
17
Reputation Activity
-
KirieZ reacted to w0wZukuBg in [w0w] Ein & Lhz Trains
ein_tra01 & lhz_tra01
.•°'°•.
File Name: ein_tra01 & lhz_tra01
File Submitter: w0wZukuBg
File Submitted: 04 June 2018
File Category: Maps & Textures
Download Link: Click here to download
-
KirieZ reacted to bWolfie in [Guide] Mapcache Generation 2018
As of Release v2018.03.13, the method to generate mapcache for Hercules has changed. A lot of people. myself included, were confused as to how it works. In this thread, I will do my best to explain the new way to generate your cache. This guide is intended to help people using the old system, not to aid new people (i.e. never generated mapcache before), so if you are new, some of it may seem like alien talk.
Old (your source predates [is older than] Feb 18, 2018)
In the old system, there were two ways to generate mapcache
You could run the mapcache executable in Hercules root folder. Or use a program such as WeeMapCache to edit in your required mapcache. These two methods would generate or alter your required mapcache located in db/[pre-re or re]/map_cache.dat. However, they are no longer supported.
New (your source is using Release v2018.03.13 or newer)
The new system involves the use of the new 'mapcache' plugin to generate files. Some quick points:
db/[pre-re or re]/map_cache.dat has been dropped (no longer supported). In its place are individual .mcache files for every map located in maps/[pre-re or re]/ Mapcache executable has been removed. Replaced with the mapcache plugin (src/plugins/mapcache.c). How to generate the mapcache?
Same as before, check conf/map/maps.conf and db/map_index.txt have all the maps you want to cache. Your maps need to exist somewhere in your repository! There are two ways for the plugin to find them:
a. Place all your maps, including resnametable.txt, inside the data folder of your Hercules repo. I.e. Hercules/data/prontera.gat/gnd/gnd/rsw (note: I forget if all three files are needed).
b. OR Configure your conf/grf-files.txt to tell it where to find your GRF(s) which contains your maps. Build the mapcache plugin. On linux, this can be done by running the following command:
make plugin.mapcache
If using MSVC, compile as you would any other plugin. Execute plugin. This can be done using the following command:
./map-server --load-plugin mapcache [param]
In windows, just remove the './' and run the commands in your command prompt. The params:
The first thing you should do is run
./map-server --load-plugin mapcache --help
A list of usable parameters will appear. Here are the ones you need to know for mapcache:
[Info]: --convert-old-mapcache Converts an old db/pre-re/map_cache.dat file to the new format. [Mapcache] [Info]: --rebuild-mapcache Rebuilds the entire mapcache folder (maps/pre-re/), using db/map_index.txt as index. [Mapcache] [Info]: --map <name> Rebuilds an individual map's cache into maps/pre-re/ (usage: --map <map_name_without_extension>). [Mapcache] [Info]: --fix-md5 Updates the checksum for the files in maps/pre-re/, using db/map_index.txt as index (see PR #1981). [Mapcache] ./map-server --load-plugin mapcache --convert-old-mapcache
Rebuild all the .mcache files using your old db/[pre-re or re]map_cache.dat file.
NOTE: You should only run this command when you have an old map_cache.dat file you need to convert.
./map-server --load-plugin mapcache --rebuild-mapcache
Rebuild all the .mcache files using your map files specified in step 2 of generation.
NOTE: You should only run this command in special circumstances. This erases ALL the existing mapcache and rebuilds it with whatever files you provide it. If you don't have the required files, the build will fail and you will be left with missing mapcache files, meaning you won't be able to access those particular maps.
./map-server --load-plugin mapcache --map <name>
Rebuild the .mcache file for the map name you specify. E.g. if you replace <name> with prontera, the maps/[pre-re or re]/prontera.mcache file will be rebuilt.
NOTE: This is the best command to run, as it only caches a single map at a time.
./map-server --load-plugin mapcache --fix-md5
I don't know what checksum is for.
The End
Feel free to ask for help here. I'll try to answer questions re: mapcache if possible. And if you think anything needs correcting or added, let me know.
Hope this helps!
-
-
-
KirieZ reacted to AnnieRuru in Advance SQL commands
As usual, I only write advance guides
This guide is a compilation of SQL commands that I have used, or Questions answered on the forum
every single subject here are related to Hercules/Ragnarok Online in some ways, so you won't feel bored reading them XD
Table of Content
1. When to use *escape_sql script command
2. How to build a case-sensitive table
3. Choose a table type, MyISAM or InnoDB ?
3a. How to index a table properly
3b. Why you shouldn't use `char_reg_num_db` table
4. AUTO_INCREMENT
5. How to do IF-ELSE in SQL query ?
5a. How to update multiple rows on different conditions in a single query
6. How to show the current rank of the player
7. INSERT INTO ... SELECT ...
8. Table JOIN vs AS
9. What is the maximum string limit for *query_sql
9a. UNION
This topic is now open to Suggestions, Ideas, Improvements, and Questions ~
I'm sure many of you have some questions since the creation of this topic
You may also post up your tricks if you want to share with us
-
KirieZ got a reaction from LordJasz in getcharid ???
Acredito que não tenha um comando para o nome de usuário da conta, mas você pode fazer com uma query sql a partir do ID da conta.
Algo como (não testei):
query_sql("SELECT userid FROM login WHERE account_id = " + getcharid(CHAR_ID_ACCOUNT) + " LIMIT 0,1", .@logins$); .@login$ = .@logins$[0]; mes "Seu usuário é: " + .@login$;
-
KirieZ reacted to Tio Akima in ADD new Signboard - chat/shop/icon/etc
Hi, I'm TioAkima.
Small tutorial to help add the new fucking SIGNBOARDs that are available to new clients.
If I'm not mistaken, it's for client's 2016+
For those who do not know, I'm talking about these new chat/shop on the NPC:
They are cool and leave the server with a nice face. <3
it is quite simple.
Go in your data folder, and in your LUA files (luafiles514)
search for file signboardlist.lub
data\luafiles514\lua files\signboardlist.lub Now let's understand how this file works to add a SIGNBOARD (cute little window with icon) like this:
The structure of the file is as follows:
{" prontera", 150, 193, 5, IT_BMP, "유저인터페이스\\information\\over_kafra.bmp", " KAFRA Tools ","#0x00FFFFFF"} {
"prontera", = map name
150, = x
193, = y
5, = height you want the window (can be zero if you want)
IT_SIGNBOARD, = window type
"유저인터페이스\\information\\over_kafra.bmp", = here is the directory where your icon is
"KAFRA Tools", = chat name
"#0x00FFFFFF" = letter color
},
Just add another line following this format. Remembering that the last window does not have the comma in the end ... It is good to pay attention to this.
Now to add icons in this other way>
The format is very similar, but it has some minimal difference ... And it's also in the same file.
It's pretty much the same thing, but one or the other function argument changes.
The structure is this:
{"prontera", 150, 193, 1, IT_BMP, "유저인터페이스\\information\\over_kafra.bmp"}, {
"prontera", = map name
150, = x
193, = y
1, = height you want the icon (can be zero if you want)
IT_BMP, = Only place the icon (without the window)
"유저인터페이스\\information\\over_kafra.bmp" = here is the directory where your icon is
},
READY!
Note that for this, you do not put the name of the chat nor the color of the letter! (you do not have these two arguments, okay?) ..
That's it .. I hope it helps anyone who wants to put these windows.
att,
Tio akima
-
KirieZ reacted to 4144 in PEEK fork
This is fork of peek packet extractor.
Can be downloaded here: https://gitlab.com/4144/peek
Changes:
For now fixed packets extraction for new clients.
Fixed packets extraction if client not have encryption packets (not kro)
Known issues:
Packet captures not works for new clients.
-
KirieZ reacted to Ridley in [Collection] Official Full Clients + latest kRO
Changelog:
- Updated all Clients
- Updated twRO BGMS (3 new ones)
NOTE: to disable the Snow effect in Prontera, open your grf and navigate to data/etcinfo.txt
Then add (or edit) the following:
weather# //prontera.rsw# //snow# Collection of official Full Clients. Those are vanilla, not modified in any way or whatever. They are patched up to date. Let me know if I've missed something.
Server Name
With BGM
Without BGM
BGM only
South Korea (kRO)
21. Dec. 2018
2,70 GB
Mega
OneDrive
2,42 GB
Mega
OneDrive
294 MB
Mega
OneDrive
South Korea (Ragnarok Zero)
21. Dec. 2018
2,22 GB
Mega
OneDrive
Taiwan and Hongkong (twRO)
21. Dec. 2018
2,24 GB
Mega
OneDrive
1,95 GB
Mega
OneDrive
310 MB
Mega
OneDrive
Japan (jRO)
21. Dec. 2018
2,23 GB
Mega
OneDrive
1,93 GB
Mega
OneDrive
311 MB
Mega
OneDrive
Thailland (tRO)
21. Dec. 2018
1,67 GB
Mega
OneDrive
1,41 GB
Mega
OneDrive
272 MB
Mega
OneDrive
International (iRO)
21. Dec. 2018
2,42 GB
Mega
OneDrive
2,14 GB
Mega
OneDrive
294 MB
Mega
OneDrive
Philippines (pRO)
21. Dec. 2018
1,5 GB
Mega
OneDrive
1,25 GB
Mega
OneDrive
272 MB
Mega
OneDrive
Indonesia (idRO)
21. Dec. 2018
1,88 GB
Mega
OneDrive
1,61 GB
Mega
OneDrive
282 MB
Mega
OneDrive
Brazil (bRO)
21. Dec. 2018
1,95 GB
Mega
OneDrive
1,69 GB
Mega
OneDrive
273 MB
Mega
OneDrive
France, Europe (fRO, euRO) 21. Dec. 2018
1,85 GB
Mega
OneDrive
1,59 GB
Mega
OneDrive
273 MB
Mega
OneDrive
-
KirieZ reacted to Ridley in Ridley's new PC
Hey guys, few months ago I built a new PC and I wrote about it at my Gaming Clan's place. But now I wanna do an english topic about it, I'm also thinkin about a YouTube Channel for Harwardware reviews. However - Let me introduce you to my PC "Dark Side"
CPU: Ryzen 7 1700x @300€ Mainboard: Asus Crosshair VI Extreme @370€ RAM: G.SKILL Trident Z RGB 32GB @3200, CL14-14-14-32 @370€ Monitor: ASUS ROG P27Q9 @800€ GPU: ASUS ROG STRIX 1080Ti OC @850€ Monitor: ASUS ROG P27Q9 @800€ Headset: ASUS ROG Centurion @270€ Keyboard: ASUS ROG Claymore @250€ Mouse: ASUS ROG Spatha @170€ Pad: ASUS ROG Wethstone @50€ The overall costs for this build was at ~ 5k€
The Centurion is a not yet available Prototype directly from Asus - Doing a review another time (it's different from the ones you can buy)
CPU: Ryzen 7 1700x
Originally I was about to get the 1800x but there aren't real benefits compared to 1700x or 1700 - except of a guaranteed overclocking.
Mainboard: Crosshair VI Extreme
It's a bit overkill, A Crosshair VI Hero would be fine too - but this one has a second M.2 Slot which I may use in the future. There were some problems with it due to the extended ATX Form Factor. According to the manufacturer it fits (and it did) but
A: The I/O shield is fixed and barely fits under my rear cooler.
B: The 24 Molex ATX pin is vertically and I didn't notice until I wanted to power it xD
Case: DeepCool Genome ROG
The Genome ROG has a built in AiO Watercooling and is ROG Certified (which comes in handy for my Aura Sync plans).
The left panel got some Vinyls.
The right one was printed with UV print
RAM: G.Skill Trident Z RGB 3200, 2x16GB Kit (CL 14, 14, 14, 34)
RAM with Aura Sync and 3200mhz.
Apparently it wasn't as easy but I made it work at 3000 MHz with a latency of 14, 14, 14, 34.
I wanted 2 x 16GB in case I ever need more.
Rear Cooler: Cooler Master Master Fan Pro and Front Cooler 2x Noctua NF-S12A
The Cooler Master replaces the stock rear cooler, (Aura Sync Compatibility). The 2 Noctuas are in the front and replacing the standard HDD Bay (I won't use normal HDD Storages in this build).
Highlight: Storm Trooper Cooler Protector
All 3 Coolers support PWM. The Noctuas are ugly but insanely strong.
First I ordered the large NOCTUA NF-A20 but it was way too alrge so I switched to 2 x 120mm.
Noctua Chromax Anti Vibrationsticks
Replaces normal screws.
Storage: Samsung 850 und 960 Evo
I hate Samsung - but they do by far the best storages. I use 2 x 850 Evo (500 GB) and 1 x 960 Evo (500 GB). The speed is insane x). The SSD's are on the inner part of the right side panel. M.2 storages use the M.2 slots direclty on the mainboard, some use PCI-E.
GPU: Asus Geforce 1080 Ti OC
Not much to say here. I haven't had a Nvidia GPU in 10 Years but AMD had enough chances and I was quite disappointed of Vega. You can't use 1st class parts only and then use a 3rd class graphics card - so here's my Nvidia comeback. The GPU is mounted horizontally.
PSU: Dark Power Pro 11 650
As above, everything in this PC is premium, so is the Power Supply.
Cooling Paste: Noctua NT-H1
I love Noctua. Overclocked at 8 cores @ 3,9 Ghz 31°C. Stock at 3,4Ghz it had 24°C. Under Full Load it reaches at max 58C°
Full PC:
The lights are full RGB and adjustable via remote (also supports various modes). GPU is mounted horizontall. The fin on top is a W-LAN antenna.
-
KirieZ got a reaction from Quazi in Configurable Refiner
File Name: Configurable Refiner
File Submitter: KirieZ
File Submitted: 02 Aug 2015
File Category: Utility
This is a configurable refiner that I made after reading the request from this topic.
It contains the following options (all of them configurable):
Normal refine
Refine N times at once (It's possible to allow this for a different group)
Set different zeny and item requirements based on item's WeaponLv field
Display information about the refine like: the safe refine and the chance of the next level.
Allow the usage of items that increase the success chance
Allow the usage of items that avoids the item from being destroyed when the refine fails
(2.0) Ask if want to use items to protect / increase refine chance
(2.0) Define custom effects when refine fails: stay as is, decrease one level or go back to +0
Everything is configurable at the end of the script.
I made some tests and it seems to be working correctly, if you run into any bug or wants to suggest a new feature, please let me know and I'll see what I can do.
Click here to download this file
-
KirieZ reacted to meko in Recent changes to the Hercules engine
Update: September 19 2017
Projects merged:
RoDEX Contributors: @KirieZ @hemagx @Asheraf @Dastgir @Smoke @4144 @Haru
Item DB enhancements Contributors: @Haru @Ragno
New script commands:
getdatatype getcalendartime rodex_sendmail rodex_sendmail2 rodex_sendmail_acc rodex_sendmail_acc2
Modified script commands:
getgroupid recovery
Deprecated script commands:
useatcmd superseded by atcommand -
KirieZ reacted to Sephus in BladeCP - An advanced CMS
Greetings everyone,
Today I'm introducing a project that I've been envisioning and working on for a couple of months, a control panel developed using Laravel (currently v5.8) that has quite a few advanced features that no other panel has offered before.
Feature Insight
Bootstrap Responsive Design
The panel by default will come with one bootstrap-based responsive design that is elegant, light coloured and adjusts to screens of all sizes. The panel is also capable of supporting custom themes.
Master Account System
Create and manage all your game accounts in any server from one main web-account.
Passwords of the master accounts are hashed using bcrypt to ensure safety for all registered users.
ROGen
Adapted from @KeyWorld's ROChargen, a library in php that extracts images from sprites and uses resources inside data folders (and not grf files). With the help of this library images of headgears, skill icons, illustrations, item images, monsters and mini maps are can be generated and displayed on web pages.
Complete Database Libraries
Using a library with conversions of information in the client folder, the website incorporates in-game information such as skill and item descriptions, quest information and much more.
Character Overview
The character overview page is an important part of a user's experience. With the features mentioned above, we're able to display alot of information about one's in-game characters on the fly.
User Profiles
Additionally, something that's never been seen before in RO CMS or Panels are public user profiles. The ability of a user to view another user's in-game information through the control panel.
Customisable Email Templates
Administration Section
The demo for this site is live and available at - http://bladecp.xyz
ID: [email protected] Pass: abcdef
How do I gain access to this awesome panel?
PM me on discord @Sxyz#0202!
To get in touch or check out updates on this project, join my discord channel @ https://discord.gg/pWgZHzx
-
KirieZ got a reaction from JulioCF in ERRO FATAL Emulador Hercules!
Se me lembro bem o Hercules não deixa ser executado em um usuário com privilégio root, por não ser necessário. Você precisa criar um novo usuário, tente seguir os passos desse tutorial, na parte "create a new linux user": https://habilisbest.com/rathena-setting-up-ragnarok-online-private-server .
-
KirieZ reacted to Temtaime in New life for RO
Hello everybody !
I'm working about two years on writing a complete new RO client. I hadn't so much time, as I'd wish, but now it's almost ready for a basic gameplay.
So what are the advantages of having own RO client ?
RO doesn't depend anymore on Koreans. It gives an ability for releasing of any new feature, whatever the players want: new 3D mobs, dynamically generated locations, everything you want.
The client is cross-platform and can work on Windows, Linux, Mac OS X and Android natively.
Thanks to using of new computer graphics features, the client works faster, consumes fewer resources, providing better graphics. For example, it loads a location instantly(to be more precise, it takes ~15 ms to load a map) - so no waiting anymore !
What are the features we have today ?
Dynamic shadows and per-pixel shading(no strange blur on the ground anymore!).
Correct rendering of all the sprites and locations including all the animations on the locations.
Rendering the best part of effects.
The most part of UI.
All the network communications with server.
But there are some missing features: some part of UI(skill UI for example), and some in-game interactions are missed. But all these will be fixed soon.
I would find those who are interested in that project, because it will be the only project, which will be used on the servers providing better game experience.
Also, a development of the project requires some means and other help, so if you have a mind and in the position, you can write to me in PM or in these comments.
Some screenshots:
-
KirieZ reacted to THPO in 2014-10-22 Issues with latest version of Hercules
That is nice Thanks
It's Fixed
-
KirieZ got a reaction from THPO in 2014-10-22 Issues with latest version of Hercules
Should be fixed with last commit (a couple hours ago)
Edit: At least part of it, I didn't notice other problems
-
KirieZ reacted to hemagx in [RELEASED] RO Hooks, a nice set of modifications for your client
Hello! ~
* Introduction
RO Hooks is a paid project, which will allow a set of custom abilities to your client, such as player name coloring, server side GM sprite and such; It is is meant to be a way to edit this old dead game client to add things either improving player's experience or giving the ability to have new of content or to give your players something special.
* What do we have currently
GM Clothes and Robot Clothes controller server side (Robot Clothes is a Special Event Sprite) Player Name coloring (Server-side) Item Name Coloring (Client-Side) Messages Timestamp "inspired by Project Chaos RO (nachtwolke.ai4rei.com)" More to come
* Pictures
- GM and Robot Clothes
- Name Coloring
- Colorizing Item Names (Configure client side, could be applied to any kind of items)
- Messages Timestamp
* Which Clients are supported?
Pretty much anything 2012-04 and onward, older clients are also supported upon request.
* Is there anything more? when is this supposed to be release? And can we suggest something?
There's still other futures which will be announced soon, I'm pretty much working everyday to find something newer.
It will be released as soon as we have enough set of custom futures, also any suggestions for features is more than welcome, as soon as anything new finished i will announce it here. Also as soon as it's ready for sell I will get a Paid Service topic.
-
KirieZ got a reaction from jTynne in Noob Sanity Check - Why isn't my simple script working?
This format seems to be from phpmyadmin/mysql, am I right?
Hercules doesn't support sql item_db, you must edit <herc_folder>/db/re/item_db.conf or <herc_folder>/db/pre-re/item_db.conf instead. (according to your server settings)
Hope this helps!
-
KirieZ reacted to Dastgir in Ragnarok Unpacked Clients Repository (RUCR)
RUCR
Hello Hercules Community,
I was working on RUCR this month and I am happy to announce that it's complete. The Site contains all Ragexe(upto 2016-07) and RagexeRE from 2014, fully unpacked.
It would be great if there will be no mirrors, I would be keeping this web up and running, so mirrors won't be needed.
Also, if you find any clients missing, you can post it here, and I will check if that can be uploaded.
Repo Link: DISABLED
Enjoy
-
KirieZ reacted to Haru in About Code Review and Why You'd Want Your Code to Be Reviewed
About Code Review and Why You'd Want Your Code to Be Reviewed
Hello, fellow developers and code contributors!
As you certainly know, years ago, Hercules adopted a workflow based on pull requests, that includes code review as one of the necessary steps before any new piece of code makes it into the master branch of the repository.
While being an uncommon and somewhat controversial change in Hercules (and in the RO emulator scene in general), code review is part of the workflow of most software projects, both open source and closed source, and has many benefits.
Why Code Review
The benefits of code review are several:
"Given enough eyeballs, all bugs are shallow" [Linus's Law by Eric S. Raymond -- The Cathedral and the Bazaar, 1999]. While the law is not strictly true, it's certainly true that the more developers read and analyze a piece of code, the more likely it is that bugs that might be hidden in it are discovered early. Testing is not enough. It's very hard (or in the case of our codebase just plain impossible) to cover all the possible edge cases when testing a new feature or a fix. An additional pair of eyes reading the code may help discovering those more easily. This includes cases where the client would normally prevent a certain thing from happening, but it's not ensured anywhere on the server side. Better quality of code. By having other developers read a piece of code, they'll end up wondering why a certain approach was taken, rather than another, and discuss it with the submitter, leading to better, more efficient algorithms, or better engineered code. Better documentation. Since the code needs to be read by other people, it'll require proper comments (or they'll ask for explanations about the parts they can't easily explain). This increases the chance that the author, or anyone else that will need to read the same code again months or years after it's been submitted, will be able to understand it again, by finding appropriate comments in the appropriate parts of the code. Better insight into the code across the team. By reading code from different parts of the emulator as part of the review process, every team member increases their own general knowledge of the software, bit by bit. This is a very efficient way of learning how different parts of the emulator work, and why they were implemented that way. Future-proofing. By having public reviews, we keep a permanent trace of what were the hot topics and why certain decisions were taken, when a certain part of the emulator was implemented. If a bug arises, or something needs to be redesigned in future, we can look up the associated pull request and related discussion, and learn more about the discussion that went on in the past, and what's hiding behind code design decisions. Reviewing code from other people, as well as having one's own code reviewed by others might not be easy for everyone, especially at the beginning, but please try your best. Here are some suggestions on how to approach code review from either side.
How to approach code review (for code authors)
As a code author, the worst thing you can do is to be afraid or shy about other people judging your code. This is the wrong approach! Don't be shy, have your code looked at by others, have them praise you for your genial approach to tackle a problem, listen to their suggestions on how to improve it. But be ready to defend your implementation, if you believe it's better than the suggestions you receive, or if the critics that are moved against it are wrong or meaningless.
Always keep in mind that:
Having your code reviewed and commented on isn't humiliating. Other people are spending their time looking at your code, asking you why you did something in a certain way rather than another, suggesting improvements. Both sides have a lot to learn from each others. (On the other hand, if no one reviews your code, that's somewhat humiliating!) If someone spots an issue in your code, it doesn't mean that you're a bad developer. We all make mistakes, and we should be happy to learn from them (and it's definitely better if someone spots them and points them out to us before it's too late and they were able to do some harm). Never, ever, take code review personally. No one will laugh about you, fire you, kill you, shame you, etc. if your code is commented on. If you believe you're right and the comments you received are pointless or wrong, chance is that you really are right. Be ready to defend your reasons, it's possible that the reviewer didn't think of them. It is your duty to explain them your reasons. How to approach code review (for code reviewers)
Reviewing code is several orders of magnitude harder than having your own code reviewed. You have to check the code for several classes of problems, point out your findings, suggest improvements. And you still have to deal with the worry about hurting the code author's feelings when pointing out a mistake.
Here are some things you should keep in mind when reading and reviewing code from other people:
You're not judging a person. You're judging code. Don't make your review sound personal. Always think of uncommon and edge cases, and never assume they can't happen, unless there's an explicit check that makes them impossible to happen. Even if the code was tested by the author, it doesn't mean that it can't cause problems to other existing features, or have some issues the author couldn't think of. If the same person writes and tests a piece of code, the chance that they don't test the cases they forgot to handle while coding, is very close to 100%. If the code is not following the project's style guidelines (and this isn't just about indentation, but also about names, conventions about function calls, proper modularization, etc), it is your duty to point it out now, before it's merged. This will make the life of your fellow developers easier later on. Think defensively. Consider the code you have in front of you as buggy until you can prove its correctness. If you see that a sanity check is missing, ask the author to add it. If you believe that a function returns the wrong value in certain cases, even if very unlikely to occur, prepare an example of input for which that happens and point it out. Remember that threats such as overflows, underflows, buffer overruns, null pointers, invalid pointers, numeric (floating point) approximation, etc. are always behind the corner, check for them as often as possible and prove that they can't occur. And remember that, while the code author isn't your enemy (and code review shouldn't generate negative feelings), it's often a good idea to think of them as your "professional enemies". There's a chance that something nasty is hiding in their code, even if they didn't write it with ill intent, and as such, you shouldn't blindly trust the code, regardless of who the author is. Don't be afraid when you comment on other people's code. Your goal isn't to hurt their feelings, you're asking them for explanations and/or suggesting the way you would have done something. Likewise, don't be afraid of making a pointless comment. If the author has a good reason for their implementation, be ready to take back your comment and learn from them. Don't accept compromises. If you're firmly convinced that the author's defense of their code is wrong, your duty is to prove them wrong. But if they manage to convince you, don't be ashamed of admitting you were wrong. Happy reviewing! -
KirieZ got a reaction from Ragno in R> How to squash commits on GitHub?
You have to force push
git push origin <your branch> --force -
KirieZ reacted to Ridley in [Release] The (data) GRF Project
Offering 2 versions of the grf now. Scroll down for more info. Both data.grf do NOT require rdata.grf.
Option 1: (clean standard kRO GRF)
Download OneDrive
The grf is up-to-date 2018-12-22. Its cleaned up, and optimized. A Lot of invalid content is removed or merged. The size is 1,40gb (1.503.844.793 bytes) compared to the original 2.13gb (2.291.252.926)
Works perfect with all current pre-renewal and/or renewal content (rdata.grf is not needed). You still need the content of the Translation Project in order to use this.
All cutins in this grf are reduced by 35%
Note: This is pure kro data.grf and does not contain any jro/iro/whatever files
Option 2: GRF with the content of all official servers
Download Mediafire
Download OneDrive
Download Mega
This GRF contains all official files. Its cleaned up, and optimized. A Lot of invalid content is removed or merged. The size is 1,43gb (1.536.478.834 bytes)
The grf is up-to-date 2016-08-04.
Please throw a PM on me if this GRF is missing something! I want this to be the most complete one of all
Small summarize
more than 200 additional maps more than 700 additional items more than 60 additional NPC's more than 130 additionalmobs more than 900 additional cutins
Instructions:
1. Download the data.7z
2. Extract it
3. Put both (grf + dll) into your RO folder
Changelog: Fixed Rock Ridge Illustrations use wrong Magenta (200, 238, 120 instead of 200, 240, 120) Removed chunk
Option 3: Episode 13.2 Pre-Renewal GRF
This one is 775 MB (812.914.794 Bytes) and great for all kind of pre-re servers.
Download OneDrive
All rights and credits belong to Gravity
Note: you can still encrypt your grf with SecureGRF or Tokei's GRF Editor - just use another name than cps.dll for it.
updated thread 2019-01-13
-
-
KirieZ got a reaction from fourxhackd in SetQuest2
SetQuest2
View File NOTE: This functionality got merged into Hercules (check setquest and getcalendartime). That being said, I'm NOT maintaining this plugin anymore.
Hello,
This plugin adds the setquest2 script command that allows you to add a quest with your own time limit, ignoring the one in quest_db, thus allowing you to, for example, make a quest end at a determined time next day independently of when it was originally given.
*setquest(<ID>,<Time Limit>)Place quest of <ID> that will expire at <Time Limit> in the users quest log, the state of which is "active".
Examples:
- Ask the player to come back in a random number of minutes (1 ~ 3)
prontera,150,150,4 script SetQuest2 1_m_01,{ .@p = questprogress(7128,PLAYTIME); if (.@p == 1) { mes "Come back later!"; } else { if (.@p == 2) { mes "You came back!"; getitem Red_Potion, 1; erasequest 7128; } .@i = rand(1, 3); mes "Come back in " + .@i + " minutes"; setquest2 7128, gettimetick(2) + (.@i * 60); } close;}
- Ask the player to come back tomorrow (next day at 00:00)
prontera,150,152,4 script SetQuest2b 1_m_01,{ .@p = questprogress(7126,PLAYTIME); if (.@p == 1) { mes "Come back later!"; } else { if (.@p == 2) { mes "You came back!"; getitem Red_Potion, 1; erasequest 7126; } .@i = 86400 - gettimetick(1); mes "Come back tomorrow"; setquest2 7126, gettimetick(2) + .@i; } close;}
If you find any bug let me know.
Submitter KirieZ Submitted 02/22/17 Category Plugins