Jump to content

myonlake

Members
  • Posts

    2,312
  • Joined

  • Days Won

    40

Everything posted by myonlake

  1. No, because of technical limitations. You would need to build your own compiler, which is impossible as we have a Lua VM. It would mean changes to source code of Lua etc.
  2. Great work with the updates! Road creation seems like a very nice feature. Maybe I could finally finish my MMO project with this system.
  3. If it is as easy as you say then please prove it my inbox is open. 1. We don't allow scripts compiled by others to execute for security reasons stated in the main post. Did you even read it? 2. It would be obvious that the person with the private key could decompile your scripts. 3. Moderators do not have access to this key, most admins probably don't either. If you wish to spout any more rubbish, feel free. A fact that is worth mentioning is that the scripts are decrypted every time they are used. Ciper text would never be executable so in turn everyone must have the decryption key. As seen a while ago by both of us, it is as easy as unlocking your bike's lock. viewtopic.php?f=91&t=65618&start=45#p670306
  4. Probably because the encryption is pretty much extra obfuscation. It is not necessarily fine to call it encryption when clients have the key.
  5. Or rather just use the downloadFile function. https://wiki.multitheftauto.com/wiki/DownloadFile
  6. You are however able to manipulate the order by using the priority parameter of the addEventHandler function. https://wiki.multitheftauto.com/wiki/AddEventHandler
  7. Please provide us with your code and possibly /debugscript 3 output related to the resource.
  8. I have a Intel i5 Core at 3.3 Ghz and a NVIDIA GeForce 770 with 4 GB video memory, and 12 GB of RAM. I have never had low FPS ever since my new setup. My server has its FPS limit at the maximum capacity, allowing a maximum of 100 FPS if I remember correctly. I have never had any performance or FPS drops (only during non-balanced processes, meaning loading a bunch of stuff from the database and/or processing something on poor back-end code). Such has only occurred when you let an unexperienced UI designer take control over UI elements and spam too many things on the screen. Or simply bad code. If you have bad and inefficient code, then I would not bother looking any further than that - fix your code.
  9. What is the problem. Those are basic mathematical operations. If you do not know about trigonometric functions I suggest you go to math lessons at school. The original script works perfectly fine. To enable mouse based rotation, simply just enable the cursor, stick it in the middle of the screen, take its position and then render the camera accordingly with the rotation, which is changed by following mouse movements. You will have to reverse the camera so the camera is in the middle instead of around a coordinate.
  10. Hello, I am having trouble connecting to any servers as I receive an anti-cheat warning for: AC #4 8ALD [Trainer]. I do not have any Cheat Engine or Process Hacker installed, or any other sort of cheating application as to the best of my knowledge. I have also tried closing my browsers. Do you know what application causes this error to randomly show up? Sometimes when I run Multi Theft Auto the error does not show up - this usually pops up after some time of using my computer, probably because I had an instance of some specific process running? dxDiag: http://pastebin.mtasa.com/834586497 Computer name and IP addresses are wiped out for a reason. Both are valid, however. Additional edit: This error has happened before. It actually started happening after I got Windows 8.1 installed on my computer, which is not a long time ago.
  11. Try changing client to Ped, and then client-side use source instead of Ped. This could fix the problem.
  12. myonlake

    HS Rockets

    As I said, approximate calculations, and more synchronization problems
  13. Whatever, whichever and whenever you run any type of thing on client end, it is always a security risk no matter what you do, what you try to prevent and what you try to stop the script from doing. There is no way in earth any system can prevent something happening, because it is being ran on the client's machine, which they can modify as much as they want - even run their own OS if they prefer it that way. It is absolutely waste of time to enable CLEO modifications to be ran securely when there is no secure way to enable that functionality. That would mean wasting resources and time on making an entirely new, pure CLEO resource system that is totally its own huge subject, which would need hundreds of commits to make any near completion/public release. Let me introduce you workarounds, hacking, illusions. These things are there for you to abuse as much as you want. By doing workarounds, hacks or illusions to make something "look" like actually happening, then that is perfect. You can do whatever you please with MTA without any CLEO or third party modifications what-so-ever. You can if you want, make 100,000,000 entities at one coordinate if you wish and make them animate however you please, and you can give them all a different material and texture. You can make MTA do whatever you throw at it, if you just spend enough time at it. Scripts should not be made in 5 minutes; you should spend months reading about your subject and researching new things, testing out things. Then you spend months making the script. Then you spend months doing performance testing and optimization, plus debugging and what else. Of course this might be faster in a team of developers with their own areas to cover in the project. Also remember public testing and public reviews, you need to consider those for the rest of your life and alter the code afterwards. This is ridiculous to say that MTA does not have the resources to run whatever you want. You can do whatever you want with the exception that you need to spend just more time on it. Of course you can always argue about "optimal environment" - is it worth it to spend the same amount of time to a script that you would to make a simple game engine? I do not really care, but I can tell you, that there are so many things people have not yet tried out on MTA, or maybe they have tried, but have not publicly announced about anything, or maybe have not had the time. I personally do not have enough experience to make an infinite entity system (or well, mostly on the rendering side/shader calculations), but yes, that is possible, until you reach the maximum amount your GPU is able to render, which will take a couple billion references - you just need to know the right way to do that; oh and you can do that in JavaScript too if you please.
  14. myonlake

    HS Rockets

    Non-HS rockets have a static travel distance and the end point is calculated by the script when triggered, that can be synchronized from the start and end point. HS and other dynamic rockets do not come with this because who is going to synchronize it? You can manipulate anything, meaning the synchronization would never be reliable, especially because there is not always someone to synchronize it. Server cannot synchronize these things.
  15. myonlake

    HS Rockets

    Projectiles are not synchronized, nothing you can do about it, unless you want approximate calculations and more synchronization problems.
  16. Set the compiled file to a new extension, such as .luac. This way you know that file is compiled.
  17. Yes, it is inheriting ACL rules from those specified ACL groups. I suggest you remove all of those others and just add a few more lines into the VIP ACL group to allow the kick and ban commands. https://wiki.multitheftauto.com/wiki/Ac ... ntrol_List
  18. It is not the VIP panel that triggers that. It is a problem in your ACL, or something else is triggering your admin panel.
  19. Well that's it, you can do anything with CLEO, which to me sounds like a virus.
  20. Yes, shaders or not, there is a significant drop in the amount of video memory that image is using. So therefore it does not matter if you have a texture and have applied it on a model, it will still lower the cost 4 times, though I recall shaders eat additional video memory, but that is not a significant value in this discussion. Good, but sometimes when drawing detailed textures you might see the difference clearer. It always drops quality whether or not can you see the difference. Compression tries to keep the quality up, but as it compresses the image it has to drop some irrelevant parts out to lower the cost. If you find that DXT5 does not seem such of a bad idea, then go for it, especially if your texture seems alright to you.
  21. It really depends on the contents of the texture itself. Additional links http://www.fsdeveloper.com/wiki/index.php?title=DXT_compression_explained http://en.wikipedia.org/wiki/S3_Texture_Compression http://www.opengl.org/registry/specs/EXT/texture_compression_s3tc.txt The major thing you should understand is: DXT1 - Quality not as good as ARGB DXT3 & 5 - Quality slightly better than DXT1 This means, that ARGB obviously has the best quality over any of these, though uses more video memory and may be slower to render. Sometimes you have to do compromises over quality, so just apply DXT1 on it if it has no alpha channel. Same goes to alpha channel images - so go for DXT3 or 5. But it really depends on how fast you need a texture loaded versus how much video memory is available. And keep in mind the significant rendering speed difference, as you are compressing an image. If you want the best quality, go for ARGB. If you want to lose some quality but have it use less memory and be faster to render, go for DXT ones, and suit up the one which suits for your alpha channel needs. Really helps if you test it out yourself. Remember, that not everyone has a Quadro or Tesla, so that means the lowest amount of video memory someone can potentially have is 2 MB. Of course that would mean that they have no graphics card (only a default integrated card, which sucks and cannot be used for much gaming), or as high 12 GB. The current normal GFX cards come with 1 to 4 GB of video memory equipped, but 6 GB is also pretty common. So if I was you and I was developing some massive custom texture-based server with hundreds if not thousands of textures, I would calculate the amount of video memory I am going to be spending. If your textures are 1 MB each, it is nothing compared to how much you can throw at the card; 100 MB = 100 textures, in that case. And if your card is equipped with 1 GB video memory, you can throw 1000 textures at it with the size of 1 MB each until you have to start ripping off some textures from further away. So to fix this issue of hitting the video memory capacity, you can just draw nearest textures, and then just avoid far textures, or lower the quality of those textures on-the-fly. You should be considering these compressions only when you are actually developing a game with thousands of textures. Large MMOs can have hundreds of thousands of textures, and those are compressed by various of compression technologies on-the-fly while playing; in most games they are pre-compressed to reduce lagging or problems with texture loading. But that is a big subject and I am not an expert there, but just remember that video memory is not necessarily a thing to worry about until you actually start to reach a video memory limit point. I actually think you can see video memory usage in-game with one of the MTA default built-in commands. TLDR: Yes, it uses 4 times less memory and speeds up drawing, but also eats some of the quality.
  22. I don't understand your example. addEventHandler( "onClientVehicleEnter", root, function( player ) if ( not isElement( player ) ) or ( getElementType( player ) ~= "player" ) then return end setElementData( player, "player:vehicle.occupied", true, true ) end ) addEventHandler( "onClientVehicleStartExit", root, function( player ) if ( not isElement( player ) ) or ( getElementType( player ) ~= "player" ) then return end setElementData( player, "player:vehicle.occupied", false, true ) end ) function isInVehicle( player ) if ( isElement( player ) ) and ( getElementType( player ) == "player" ) and ( getElementData( player, "player:vehicle.occupied" ) ) then return true end return false end addEventHandler( "onClientRender", root, function( ) if ( isInVehicle( localPlayer ) ) then dxDrawImage( posx, posy * 1.25, height, height2, "data/radar/info.png", 0, 0, 0, tocolor( 255, 255, 255, 255 ) ) end end )
  23. You cannot edit model vertices, no.
×
×
  • Create New...