-
Posts
1161 -
Joined
-
Days Won
10 -
Feedback
100%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by Karbust
-
-
GitHub Repository:
The tutorial bellow is also available on the repository.
Metin2-Patcher-Electron
A simple metin2 patcher made in Electron with React and TypeScript. The file verification is made with SHA256.
Getting Started
Install NodeJS: https://nodejs.org/en/download/
Install Yarn: https://yarnpkg.com/getting-started/install
Clone the repository:
git clone https://github.com/Karbust/Metin2-Patcher-Electron
Install the dependencies:
yarn install
Edit
src/config.ts
with your own values. Changeresources/icon.png
with your own logo (should be at least 256x256).Available Commands
Command Purpose yarn run start Starts the React App (aka Frontend) in development mode. yarn run build Builds a production ready React bundle. yarn run electron-start Starts the Electron App. yarn run electron-pack Builds a production package of the app. yarn run lint Check for linting errors. yarn run lint-fix Fixing some linting errors. About the Patcher
This project was made with the intend of learn more about Electron, something I wanted to do for a while.
If the folders don't exist, they'll be created. If the files don't exist they will be downloaded.
The patcher checks the local files and if their checksum mismatches the remote checksum, they will get downloaded.
This patcher runs the downloads asynchronously, this means it will download multiple files at the same time.
The entire project is made in React and Electron both with TypeScript. For CSS was used TailwindCSS.
Deploying
After editing everything you must use the command
yarn run electron-pack
to build the application.It will build 2 files inside the
release
folder:- Metin2 Patcher Electron-X.X.X-win.zip
- metin2_patcher_electron.exe
The first file is the full bundle zipped that can be extracted to the client folder (after removing the 2 unnecessary LINCENSE files).
DON'T USE THIS IF YOU ALREADY HAVE THE CEF BROWSER ON THE CLIENT.
The second file is also zipped but will be extract to a temporary folder during runtime (takes about 3 seconds to fully open) and clean after itself when it closes.
This is the way if you can't perform the first option.
Development Testing
In case there isn't the possibility to use a local webserver (like Apache with Xampp, or Wampp) it may be necessary update the CORS on your remote server.
For NGINX
Go to the configuration file for the patcher host and add this line:
add_header 'Access-Control-Allow-Origin' 'http://localhost:3000';
For Apache
Go to the configuration file for the patcher host and add this line:
Header set Access-Control-Allow-Origin "http://localhost:3000"
It may also be needed to activate the headers module:
a2enmod headers
Web Server
Using
, you shall place the client files inside a folder calledfiles
and run the script.It will generate the JSON file with the names, sizes and checksum hash of the files.
Issues
If you have any issues, post here or open an issue on the repository:
- 227
- 5
- 2
- 3
- 2
- 1
- 1
- 2
- 1
- 1
- 77
- 1
- 11
- 158
-
I would say that in the state that it is already there's an efficient way of cleaning it without harming functional devices. The garbage is floating in space, unless they can make them enter the atmosphere to trigger vaporization on enter, there's no other solution, at least with the technology available today.
Starlink is in low orbit (around 550km), there's almost no space garbage there, but when they start dying, which will happen, Elon will probably let them crash in the ocean than let them there. They intend on having almost 3000 thousand satellites up there.
-
The errors are pretty explicit, you don't have those tables on database account, you need to create them.
We don't know what structure they need to have, but you can see at least 1 field per error message.
secure_ip we can see it has, at least, the field ip
banned_hwid_list we can see it has, at least, the fields hwid and hdd_serial
secure_pc_list we can see it has, at least, the fields hwid, login and status, which I imagine it probably has the foreign key login to login column on table account (which isn't the correct way, it should have the PK from account as FK)
-
3 hours ago, x.Skyui said:
Can anyone update the link again? I've been looking for the client for hours and can't found. But I have found already the server files.
Thanks!
https://mega.nz/file/FM4y2ApD#BeRKdUsLnWNdQU9PyJKZsG_wzO4sh6UQWPiBCJaqGh4
They have been on my mega account since 2013 xD
- 1
-
1 minute ago, iRETEMAG said:
NO ZEROTIER PLS
You'll need the tutorial I gave you on funky emu. Use the virtual machine with a Bridged NIC and set the IP either to DHCP or a static IP on your own IP range.
You'll only need the INTERNAL_IP and the PROXY_IP.
You'll also need to open ports on your router and maybe a good idea to use No-IP just in case you have a Dynamic IP.
- 1
-
4 minutes ago, iRETEMAG said:
Thanks for your reply and ZeroTier suggestion but I need to configure the machine like oldschool way but i'cant figure it out which settings I need to use on network adapter and bsdconfig.
You need to create an account on ZeroTier's website, then you create a new network. You can also manage what network IP address range you want, it will use DHCP to assign an IP for each node.
When you install ZeroTier on FreeBSD you use the zerotier-cli to join the network (if the network is set to private you first need to add the client node id to the network in order to be able to join).
You may need to do this: https://funky-emu.net/topic/23304-c-installer-un-proxy-ip-sur-votre-game/
I haven't tested without it, not sure if it works or not.
You'll need to use this on the CONFIG's (change with the IP assign to your VM from ZeroTier):
PUBLIC_IP: 192.168.196.123 INTERNAL_IP: 192.168.196.123 PROXY_IP: 192.168.196.123
-
I currently have a server only for friends using ZeroTier. It can have up to 50 nodes for free (each node is a player, and one is the server) (we are only 10, but it's only for fun with my friends).
ZeroTier is a VPN service like Hamachi. The server is running on a virtual machine with VMware, only needed to have either a NAT NIC or a Bridged NIC, it only needs internet to access the ZeroTier network.
What is the advantage? You don't need to share your own IP or the need to open ports on the router.
- 1
-
From what I know, indexing such a big table will bring more disadvantages than advantages. Also, each row inserted needs to be indexed, which will impact performance.
I don't think a log table should be indexed, only tables like accounts, players, store items (itemshop, not ingame) and stuff like that.
And you still have the overhead of having to wait to create the index of an already in production table, which most servers won't probably truncate.
Overall, the intention is good, but I don't think it's a good idea to make this type of index.
And, time shouldn't be a HASH, the query would need to be an = or <=> Three-way comparison, which isn't ideal for a datetime column, it would probably need to use a >=, <=, > or <.
- 1
- 1
-
20 hours ago, Vaynz said:
Missing part with add existing item :).
- 1
-
2 hours ago, Vaynz said:
Hello there is improved Intro Logo Client video. Is made on define and some parts of tutorial are missing
You have and convertor in .zip
1. UserInterface.cpp - Binary source copy BandiVideoLibrary.cpp BandiVideoLibrary.h BandiVideoPlayer.cpp BandiVideoPlayer.h Open your sln Go on Userinterface -> Right click -> (Add existing item) and add all 4.
Py part Don't forget to import app
locale_inc.h binary source #define INTRO_VIDEO
I recently used my own tutorial to add on another client, there was nothing missing and worked fine.
Also added the define though, more useful that way, and able to disable on debug build.
I checked your editions, you only added the define though, what other parts of the tutorial that I miss are you referring to?
- 3
- 1
- 3
-
2 hours ago, JustAnErr0r said:
can you make a sort by itemIDs button?
Done. Added a sort button for the official and unofficial icons.
Also, now both lists start already ordered.
- 2
-
I just updated the website.
Now it features a new look and I also added a section for Unofficial Icons, where I will keep adding new icons from posts and clients.
A mouse click on top of the icon will copy the icon URL to the clipboard.
If you have icons that you which to see on the Unofficial Icons, just send them through PM or on Discord.
- 1
-
1 hour ago, ondry said:
dont ask me.. he said, he is translating server files.. and if he doesnt have items (icons/models), what is the point of having protos anyway?
The icons and models are posted, only missing the protos...
- 1
-
8 hours ago, ondry said:
he can take the latest one from p3ng3r and translate the missing ones by himself within few minutes
What? How the well will he "translate" something he doesn't have?
There are new items, they aren't always the same...
- 1
-
1 hour ago, ondry said:
you can find mob names and item names from official server here
The most recent aren't included in the package posted by p3ng3r...
- 1
-
36 minutes ago, Nino said:
You can use the tool made by @Distraught to convert your gr2.
That's not an importer, it's a converter. It has always been the only way...
-
5 hours ago, osmanhere said:
will u add importer plugin for 3dsmax18?
There's no importer plugin, only exporter...
- 1
-
If you're worried about that you should read this: https://cheatsheetseries.owasp.org/cheatsheets/Cross_Site_Scripting_Prevention_Cheat_Sheet.html
-
There's no leaked version for 2017...
-
28 minutes ago, Jettyx said:
Hi,
What is the newest 3DSMax with .gr2 export ?
Does anyone have plugins for newer versions of 3ds? (like 2014, 2017, 2018)
Thanks.
The newest exporter is for 2018. Granny 2.11.8
There's no importers, you need to convert from .gr2 to .obj and then you can work from there.
- 3
- 1
- 1
- 1
- 1
- 2
- 1
- 5
-
3 hours ago, BeHappy4Ever said:
I mean write the print command for example with special encoding and the command be executed with succeed.
print is print, there's no other way to write it.
Either I'm you don't know what you want or I'm not getting it...
-
16 hours ago, BeHappy4Ever said:
I think it's just for text and not commands
Wdym "commands"?
With print, echo, etc and UTF-8 encoding there's no problems...
-
-
Just save the file as UTF-8 and what you write in notepad++ it's what you get in the browser.
Baguette Set
in Weapons
Posted · Edited by Metin2 Dev
Core X - External 2 Internal