myonlake
Members-
Posts
2,312 -
Joined
-
Days Won
40
Everything posted by myonlake
-
I do not exactly understand why does a shader-expert have to reply to you when you can find the information on dxCreateTexture Wiki article?
-
Use your own functions to check if the player is in a vehicle. You can use this by manually checking when a player has fully entered the vehicle, and when the player has just started to exit the vehicle. This way you know if and when the player is actually inside of the vehicle. Just make sure to attach the exit stuff with your existing exit event, or otherwise your other statements may be ignored.
-
That is not the way it goes. Licensing is there for a reason, and if you break it and get caught, you can actually get sued to court and you will lose everything you have. It is better to follow the license agreement. You can always sell your stuff regardless of who you got it from. Being able to, and not allowed to, are two different things. I can always drive a car without a license, yes, but I am not allowed to. I can do that, and if I get caught, I pay a fine and the car will be locked down. It will not be funny after ten years when all of a sudden you get sued to court for breaking license agreements. Large companies can also get sued for using non-commercial code in their projects. If they use those "for personal use" scripts in their large projects without special authorization, they can get sued and well, they pay a lot of money for that. I suggest you keep everything realistic and follow the agreements. If I ever caught someone selling my open source code, I would sue them for breaking my license agreements.
-
Well, that's not the real reason. The real reason is people don't understand how powerful the projects actually are. They have a lot more to offer than just what there is by default in GTA Online. We can do our own totally new missions, areas, game modes and so on. It opens doors to a whole new level.
-
Pretty much related to: * https://bugs.multitheftauto.com/view.php?id=3857 * https://bugs.multitheftauto.com/view.php?id=7845 * https://bugs.multitheftauto.com/view.php?id=8091
-
You connect to the FTP server through your FTP/SSH program, such as FileZilla, WinSCP or PuTTY. Find your Multi Theft Auto's installation directory on the server, which is by default located at MTA10_Server/output directory. If you are unable to get there, or can only find yourself in "server" directory and no access to the below areas, then I suppose you have bought a preset game server from a host? This means you cannot update the server yourself, and you must ask the game server support to upgrade the server for you, unless the control panel you are using has the ability to update the server. Then again, you can do this with command line, which is for some users easier. I suggest you check out the Wiki article on how to build MTASA server on Linux: https://wiki.multitheftauto.com/wiki/Bu ... _for_1.4.0. Only read up the General instructions for 1.4.0 part, as apparently you already have MTASA server installed on the server.
-
You can use the get function to get the global settings, or resource-based settings.
-
You can always make a wrapper function for those two and make your own JSON parser, shouldn't be too much of a big deal to be honest.
-
It is funny how you expect a single resource, belonging to a whole game mode, to be compatible with your own server. No, it is not going to work, and we also are not going to give you help as you copy and paste the raw code the resource has in it. Figure it out yourself by learning how to script; debug the code and find out what is causing the problem. I am certain it is the exports, as you do not have all the scripts on your server.
-
You must define each an every variable with their own value, unfortunately, so if you check up that code on your Lua virtual engine, you can actually see that it returns nil on all the variables except the first one.
-
Anything that is ran client-side can be altered no matter how you try to prevent it. You can always make it less probable, but it can still happen regardless of what you do. I would rely on the client as I have not seen many injections happen while I have been playing on servers, but it really depends on if you trust your players. If you do not, then just do it server-side and your problem is solved, though it is worse on behalf of performance, just a tiny bit though. Just use one timer and do the stuff for all clients at once but make sure to slow it down, so you will not run 100 simultaneous tasks, which will cause sync delays or freezing as the server processes the data. Of course simply altering table values will not cause a freeze. And do not take it as if timers are bad code; timers are there for a reason and if you cannot find any other way to time something, then just go for it. Timers are native code and work efficiently, and honestly I like timers, they are great when used accordingly. It would be an another story if you had a timer doing the exact same thing on all clients - that is inefficient and will cause performance drops server-side as it has to calculate each timer individually, when you could have just one run it for everyone. As Bonsai mentioned below, you can use element data to make it more secure. As you are altering a value with a static pre-defined amount, it should be possible to calculate maximum (and minimum) offsets. So if you send the new data to the server, the server calculates if the previous and current data match the amount it should have given the client, then it lets it go through, or if the offset is way too different, it will alarm of a possible cheat. This should also be compatible with game freezing or temporary problems with packets. If a packet is lost or problems occurred when sending data to the server, it will simply try to send it next time, and repeat until it successfully sends it. The server will calculate the amount of times the person would have received a specific amount of points, and then compares it to the amount the client has at the time the server receives the packet. If the point amount is way over the maximum point count, it will cancel it or possibly just reverse to the maximum point count so the player still gets points, but only the amount the player should have in the first place. So basically the client is only just sending the server a notification that it should check the points against cheating. However I think constant client-server communication like so is inefficient and very poor way to make an anti-cheat work. You could just time it server-side and do it to all clients at once, and then keep track of all transactions the client has made during the time. It just needs a lot of testing whichever way you end up doing it, but just so you know (as an example) all games always verify client movement server-side, as otherwise you could use speed hacks to make you move faster than the game allows by default. That is using a constant connection between the client and the server for anti-cheat purposes. Anti-cheat is a large subject as there are many many ways to accomplish one and another, but hopefully this helped you out.
-
But MTA is 64-bit? By default it uses memory randomization, so it should be more than "slightly" harder to find something useful in memory, or does this not apply on MTA?
-
It is not possible, as GTA does not have this functionality by itself anyway. You can do this with Lua, though, so go scripting.
-
It is not a rewrite. It is a wrapper function.
-
Encryption of account data for client-side storage
myonlake replied to LonelyRoad's topic in Scripting
Whatever you do, never share the key with the client. -
Each resource has their own Lua virtual machine. They don't talk with each other unless forced to. Currently exports are the only and good way to do that. It is like the same thing with modern browsers where each page tab is their own process. Improves safety and many other things.
-
Yes but someone already started doing GTA V MP Mod don't know how. http://v-multiplayer.org GTA V is made with same engine and same scripting language as Max Payne 3 and people who doing this project http://v-multiplayer.org said that Max Payne 3 was very easy to script not as GTA IV was. Also other team is doing something http://www.vmultiplayer.net/ So i think we can have some sort of MP Mod on GTA V soon after PC release. Those are nothing. And they have started working on those through the PS3/Xbox versions, they just rip the code out and investigate it (those are just websites with no actual code, meaning they have done nothing so far). So far it seems they have not done much, so probably waiting for PC launch. https://github.com/GTA-Network/GTAVTools
-
I hope the peds will be synchronized and roaming like in other RPG games.
-
Indeed, but for example on my server I simply just warn the user with a message and cancel the message. This way no one gets harmed and admins are notified. And on my chat no one shares IP addresses no matter what. There is Skype and IRC that you can use if you really want to be that close and personal. And besides it does not have to be applied to all chats, but for example all public chats.
-
Besides I doubt all moderators have access to the community control panel. The community has been polluted already. It's full of 1 line scripts or scripts that have been made 100 times in the community and people keep putting them there for the sake of their "portfolio", or something. I would prefer GitHub, and if you have something massive to share then put it on the Wiki. The community should be totally taken out and rewritten from a scratch, as the logic is just not good. And it is not protective enough against spam/fake resources. Having a small team go through invalid ones is just ridiculous, and should be based on a number of downvotes, and if there is something critical then a simple report button that sends a message to community moderators on the global MTA site (sockets are perfect - hook it through all MTA sites and no matter on which page you are you get the message). Community looks old-fashioned like the rest of the MTA sites and would really need a revamp, besides there are subsites within the community that are locked or no longer in use ("servers" -page on community, which never was used that much, anyone?). Also where is that global login thing Blokker was talking about a year ago (also, that list should include the MTA application as well, some form of login for more features, such as the community site and such; and in order to upload anything the script should be compile-errorless)? That never happened. I know people are busy and all, but it would be more than appreciated to know the state of these "ongoing projects" internally on MTA. Gather up a team, plan out the next site version and see what could, and should be improved. I am sorry for sort of breaching up and going off-topic, but at least had to put it somewhere, and as a reply to the above ones I feel like it is sort of appropriate.
-
onClientPlayerWeaponFire does not trigger with projectiles. Projectiles are not necessarily always launched by a player weapon. The only way is to do what I explained above.
-
%d\.%d\.%d\.%d (or precise \b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b). And before that strip everything else except digits and dots. IPv6 might be a long shot but do the same thing except look for anything in between 7 colons. Problem is if they are abbrevated to use double colons instead of full 16 bit hexadecimal sections for zeros. But if that is not the case then that should do it. And I personally disable any IP addresses in chat, as no one is supposed to be sharing them in the first place. And if they really want to, then they can just take it somewhere else. I also use some words which I block, so if all were found it would call it an advertisement. Neither of these systems are waterproof, so someone could use letters representing numbers, but you could always make a map for that and look for them as well. It's hardcore and might be over what you need. Most advertisers use valid IPv4s, so should be quite easy. The only thing you have is if someone posts with a domain instead of an address - hard to block, but you can always use word check on that.\b
-
Or search the forum. Good for starters would probably be BasicRP and for a little more advanced stuff there is Paraduse roleplay and FairPlay, which you can find on Google.
-
I would probably do this, as it seems quite easy and interesting; but instead of giving it away for free to someone especially, I would instead put it on my GitHub so anyone could use it. If that is good enough for you, then it is good enough for me. But, I am not waiting for you to answer, so I am going to make it open-source right away.