Jump to content

ProfessorEnte

Bronze
  • Posts

    42
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

ProfessorEnte last won the day on March 5 2021

ProfessorEnte had the most liked content!

About ProfessorEnte

Informations

  • Gender
    Something else

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

ProfessorEnte's Achievements

Enthusiast

Enthusiast (6/16)

  • Very Popular Rare
  • Conversation Starter
  • First Post
  • Collaborator
  • Week One Done

Recent Badges

386

Reputation

  1. #Update: Money Animation Class Preview Call it: Add to imports at the top of game.py: "import example_moneyAnimation" After the login in the game you will see the window Download: example_moneyAnimation.py Type Writer Scrollable Textline Class Preview Call it: Add to imports at the top of game.py: "import example_typeWriterAnimation" After the login in the game you will see the window Download: example_typeWriterAnimation.py ListBoxDrag Class Preview Call it: Add to imports at the top of game.py: "import example_listBoxDrag" After the login in the game you will see the window Download: example_listBoxDrag.py
  2. M2 Download Center Download Here ( Internal ) Hey, the idea to implement Snake in Metin2 came from MrSIB I think it's a cool idea and that's why I implemented it. Preview Control w,a,s,d to control the snake spacebar = pause Settings You can set in the script if you are allowed to go through the wall or not and change the size of the drawn boxes or the playing field. Execute: e.g. in the game.py above to the imports: "import snakeGame" After logging into the game you will see the window. Settings Have fun! Download: [Hidden Content]
  3. Hey, due to recent events, I wanted to publish a bug, which was available in my itemshop a few years ago. In many pub systems written with Lua, it is still present and some people like to take advantage of it. If we continue the example with the itemshop, it was possible to "buy" items for free. For example, instead of a number, the client sends the value "NaN" (Not a Number) for the number of items to be bought. In the quest tonumber() is now executed and "NaN" remains "NaN". cmd = "NaN" --(sends "NaN" instead of a number) amount = tonumber(cmd) -- now contains NaN If a comparison now is made, the result is always false: if amount > 200 then print'The maximum amount is 200.' return end -- FALSE if amount < 1 then print'The minimum amount is 1.' return end -- FALSE That is not such a big problem at first. But if you do a calculation and then compare if the coins are enough, then we have a problem: cmd = "NaN" --(sends "NaN" instead of a number) amount = tonumber(cmd) -- now contains NaN mycoins = 0 -- The number of coins from the Coins column of the account table itemPrice = 1000 -- Price of the item in the item store realPrice = itemPrice*amount -- 1000 * NaN => NaN if mycoins < realPrice then print 'Unfortunately you do not have enough coins.' return end -- FALSE (0 < NaN) -- Not enough Coins, but it goes on, because the comparison was false. -- Give item. -- Item was bought with 0 Coins. Here is a link to it: [Hidden Content] A script for testing ([Hidden Content] under Lua): -- cmd is the value sent by the client as example a number of items you want to buy. If you now calculate with this value and send instead of a number NaN, inf, -inf, ... cmd = "200" --cmd = "NaN" -- remove comment for testing (sends "NaN" instead of a number) amount = tonumber(cmd) -- mycoins is the number of coins, which are in the Coins column of the account table mycoins = 1000 -- mycoins = 0 -- remove comment for testing (sets existing coins to 0) itemPrice = 100 if amount > 200 then print 'The maximum amount is 200.' return end if amount < 1 then print 'The minimum amount is 1.' return end realPrice = itemPrice*amount if mycoins < realPrice then print 'Unfortunately you do not have enough coins.' return end newCoins = mycoins-realPrice print('set new coins in db '..newCoins) print 'give item How it can be fixed, for example: function IsFinite(num) return not (num ~= num or tostring(num) == "inf" or tostring(num) == "-inf" ) end -- Example call amount = tonumber("123") if not IsFinite(amount) then return end -- Everything ok amount = tonumber("NaN") if not IsFinite(amount) then return end -- triggers return
  4. Thanks for asking. I'm fine. Maybe u forgot the real question?
  5. #Update (very easy to use): "Board" Animation Class (enlarge and shrink) Preview Video [Hidden Content] Call it: Add to imports at the top of game.py: "import example_boardAnimation" After the login in the game you will see the window Download: [Hidden Content]
  6. #Small changes When holding CTRL (can be changed) the cursor changes and text can be translated instantly. In addition, already translated texts are now stored for faster translation.
  7. Sure. Deepl. But I have not found any way to use it without paying 0.01€ per 500 character.
  8. Yes this is my system. xD It's the first Version. I am currently updating the translator with some new functions.
  9. Hey, I am currently working on an ingame translator (Python & c++) for Metin2. It uses the Google Translator. You only have to press the "Translate Button" at the bottom of the taskbar (the cursor changes then) and any text can be translated directly. If you want to select more text at once, then you have to hold shift. If the "Instant Translate" checkbox is activated, the text will be translated on sending (for chat and whisper). A preview of the current state: https://metin2.download/video/5if9WiAT80epQDleLVyeH9aoSi5QZOe4/.mp4 Do you find the whole thing useful at all and would you want to use it? Do you have any ideas?
  10. The code has been kept simple so that it can be easily understood. You can always optimize everything. Yeah, I've been thinking about that, too, because things are getting messy. As soon as I find the time.
  11. M2 Download Center Download Here ( Internal ) Introduction Hey, since I'm often asked if I can make an example for this or that in Python, I just post some of these examples in this thread from time to time. Usually they just end up in my trash (that's why the collection is small for now) but maybe it will help some of you to learn something. You are also welcome to post examples here and I will add them to the startpost. You have a wish for a certain example? Then write it in here. PS: These examples are designed very simple, so that they can be understood. Examples ui.ComoBox() ui.ScrollBar() with text ui.AniImageBox() as loading bar ui.ListBox() ui.ToggleButton() ui.RadioButtonGroup() ui.DragButton() ui.Bar(), ui.Box(), ui.Line() ui.Gauge(), ui.SliderBar() ui.TextLine(), ui.EditLine() Pagination Tabs DropDown Tree Category Navigation ListBox Search TextLineScrollable Class Collapsible window
  12. The boy who wants to build a botnet, haha. ? Do not trust.
  13. Another user told me that aeldra uses the awesomium engine as a browser alternative in their client. Now the only question is, who can install it or maybe has already installed it.
  14. hey, has anyone ever dealt with the ingame browser of Metin2? It's quite old and doesn't support some newer websites. I would like to use the paypal payment process. However, the old metin2 browser is no longer supported What are the possibilities? Have any of you ever tried upgrading or even adding a completely different one? Mfg Ente.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.