-
Posts
507 -
Joined
-
Last visited
-
Days Won
5
Everything posted by Jusonex
-
https://wiki.multitheftauto.com/wiki/SetControlState https://wiki.multitheftauto.com/wiki/SetCameraTarget (Don't forget that the aim target is not equal to the camera target, but there's currently no other way to manipulate the aim target)
-
I uploaded a test build, so if you'd like to test it, follow the instructions on my wiki page: https://wiki.multitheftauto.com/wiki/Us ... ow_to_test
-
@Cobra: You can't "install" awesomium in that way. Awesomium is a C++ library which provides functions and classes to generate pixel data from rendered web pages. That means that you have to integrate it in MTA's rendering system and write a lua interface. I'm going to provide a test build within the next few days for those who want to test it out.
-
@Crassus: http://translate.mtasa.com/da/
-
Hi, many people suggested AwesomiumCEF (an embeddable webbrowser which is based upon Chromium) to be integrated in MTA. Despite some doubts I tried to implement it (just for fun so far). You can watch the result below: The script would look like the following then (that's a part of the code I used in the video above) local webBrowser = createBrowser(1200, 675) addCommandHandler("youtube", function() browserLoadURL(webBrowser, "http://www.youtube.com/watch?v=kdemFfbS5H0") addEventHandler("onClientRender", root, function() -- Update texture data updateBrowser(webBrowser) -- We can simply draw the webbrowser now since it is a standard DirectX texture local x, y = 110.7, 1024.15 dxDrawMaterialLine3D(x, y, 23.25, x, y, 14.75, webBrowser, 18.2, tocolor(255, 255, 255, 255), x, y+1, 19) end ) end ) The main problem I see at the moment is the potential abuse capability: A server would be able to open every webpage it wants to - including porn and warez. There should be in any case an option to turn the entire webbrowser stuff off. Furthermore I can think of several solutions to restrict the access somehow: 1. Solution: Requests: This is in my opinion the best solution. The server must request the pages first in order to open them later. The player has to accept the request (a messagebox or something) then. This could look like the following: -- Ask the player after login addEventHandler("onPlayerLogin", root, function() requestWebPages({"youtube.com", "google.com", "myservername.com"}) end ) There should also be an option to save the decision, so that the player wouldn't get the annoying message everytime. Once you requested the websites, you can use them unconditionally 2. Solution: A global whitelist: There is a global whitelist which is managed by the MTA team (all websites are blocked generally). If you'd like to open your server's website, you must create a kind of short application. Pros: The best protection and possibility to fight against abuse Cons: Pretty much administration effort 3. Solution: Vice versa - An own + global blacklist: This solution is probably the worst: Generally there is no restriction. Lots of porn and Warez sites are blocked. If you don't want a server to open a specific website, you'll be able to add it to your own blacklist. Finally, what's your opinion on the solutions? Do you have a better idea? Could you imagine a webbrowser in MTA generally? Best regards
-
Yes. It'll be merged in - I guess - 2-3 weeks.
-
Fixed: http://code.google.com/p/mtasa-blue/sou ... ail?r=6266
-
Oh, are you talking about the tab key?
-
How long did you wait after starting the server? What's the name of your server? It might contain whitelisted words (in that case try changing the name).
-
Try updating MTA manually: https://mirror.multitheftauto.com/mtasa/main/mtasa-1.3.5.exe
-
No, otherwise everyone would have the same issue. Does it happen on every server or only on your own? In case of the second case: Could you provide us a piece of your GUI code?
-
As far as I know Neon Carball uses an invisible car that has the same size as the ball (so that the ball seems to have its own physics which you can modify via setModelHandling/setVehicleHandling). As an alternative you can try to play around with setObjectMass and dynamic objects. Everything else (setElementVelocity etc.) would require pretty much efford.
-
I'd strongly recommand you not to do this. If some gains control over the client and is able to execute clientside Lua code, he'll be able to execute almost everything (such as ACL manipulation, shutdown, script stealing etc.)
-
[VB.Net / Lua]Per VB.Net, MTA-Lua funktionen aufrufen
Jusonex replied to ReDFoX's topic in German / Deutsch
Direkt funktioniert das nicht. Mit C++ kannst du die MTA Funktionen mehr oder weniger direkt aufrufen, weil C++ dazu low-level genug ist (und MTA davon abgesehen selbst auch in C++ geschrieben wurde), Um darüber einen ganzen Gamemode entwickeln zu können, müssen aber auch einige Änderungen am Server vorgenommen werden (den du dir aber dank OpenSource selbst kompilieren könntest). Für VB.NET oder eine andere .NET Sprache müsste man sich einen Wrapper schreiben, der intern auf z.B. per C++ auf MTA zugreift. Hier hat jemand mal soetwas angefangen: viewtopic.php?f=108&t=68554 Im großen und ganzen würde ich jedoch empfehlen bei Lua zu bleiben (zumal VB.Net Dreck ist ) -
You skipped the second part of the description https://wiki.multitheftauto.com/wiki/SetSoundVolume
-
It would be a lot of work to add support for v1.01 as the binary address offsets totally differ from 1.0. If you want to play MTA while having 1.01 installed, you can try renaming the 1.01 gta_sa.exe to something else (and when you want to play the singleplayer then, you'll have to open the renamed one).
-
No, there is no need to create a new request. Solidsnake14 was already right. If you pass a player to setSoundVolume, you'll change the player's microphone volume.
-
You are currently only able to compile MTA with VS2008.
-
Now it is.
-
ASI files are nothing else than DLL libraries. If servers were able to load DLLs on the client, you would create a beautiful malware-distribution-platform. On the other hand if players were able to install ASI mods only for them, you would provide a great cheat interface and all the protections of MTA's anticheat were useless since this is exactly what the anticheat tries to prevent. In conclusion it would - of course - be very nice to extend MTA's functionality in that way, but it requires lots of trust in server owners that we can't expect from them. If you are interested in a certain feature, feel free to create a feature request at the bugtracker.
-
MTA settings --> Tab: Video --> Remove the tick at "Enable Device Selection Dialog"
-
First, try to delete your gta_sa.set.
-
Your code is missing dbPoll. local queryResult = dbQuery(server, "SELECT * FROM accounts WHERE serial = ?", serialz) local database = dbPoll(queryResult, -1) The rest as above.
-
HookInstall function in source code
Jusonex replied to megaman54's topic in Open Source Contributors
iJmpCodeSize specifies the amount of bytes you want to replace to install the hook. This must be at least 5 bytes since a jmp instruction has a size of 5 bytes. In most cases it's the best to replace the instruction at the source address entirely. To find out how long this instruction is, you can use IDA Pro's Hex-View subwindow. That means: Mark/select the instruction you want to replace and switch to the Hex-View tab where you can see the length in bytes (each block is one byte) of the instruction. HookInstallCall works in a similar way. Instead of creating a jmp instruction, HookInstallCall creates a call instruction so that the current eip will be pushed onto the stack. On the contrary HookInstallMethod which is often used in the context of VTables only replaces the function address and leaves the rest well enough alone. -
That's a very old script (and if I remember correctly it's compiled). I'm using the same object. I uploaded my current object-oriented version here: http://www.jusonex.net/public/mta/navi.zip
