larania
Very Talkative Beta Tester
Posts: 128
|
Post by larania on Jun 27, 2007 23:58:38 GMT -5
Hehe, guess that could very well be it It's very selective as to who the mod authors are though... I really want to use Decursive again but at this moment I am a little afraid to use it... I use some mods such as Perl Classic, CT Mod (which I may dump all together when Lunar Sphere is complete ) CTRA, Auctioneer, Klik, Titan Panel (few titan plug ins) Meta Map which is fairly large but a nice map addon... Fontabulous (just to change the font in game to a cleaner font) and ChatMod which cleans up the chat box, colors nicknames, etc...
|
|
|
Post by cleolump on Jun 28, 2007 0:02:45 GMT -5
O.O *eyeballs fall out*
I am SO lost! I feel so nooby haha.
I don't understand anything in this topic >.>
|
|
|
Post by Moongaze on Jun 28, 2007 0:13:13 GMT -5
On thing that affects the FPS is the addon's "OnUpdate" code. If you don't have some kind of throttle in there, it will run your CPU waaaaay more than it needs to. Here's one example, represented four different ways, based upon something I do: Non-Ace mod, not coded well: You have 130 buttons. The OnUpdate code for the sphere scans every button on the sphere and then checks if that spell's cooldown is going or is finished. It then changes the artwork to specify if it is cooling down or not (darkens it) and updates the text on the sphere. Since it's not throttled, it runs every 0.02 seconds. All 130 buttons are fully scanned each run. Hit on CPU and Framerate: OMG Huge Ace mod, not coded well You have 130 buttons. The OnUpdate code uses the the built-in OnUpdate code that Ace gives you (it throttles it for you, and you set it to update once every 0.25 seconds). The code for the sphere scans every button on the sphere and then checks if that spell's cooldown is going or is finished. It then changes the artwork to specify if it is cooling down or not (darkens it) and updates the text on the sphere. All 130 buttons are fully scanned each run. Hit on CPU and Framerate: Large Non-ace mod, coded well (pretty much the way I did it) You have 130 buttons. The OnUpdate code has a throttle set in so that if 0.25 seconds or more have passes since the last scan, it will execute the scanning code. The code for the sphere checks to see if the button is listed in the cooldown table. If it is, it then scans to cooldown and updates the time. If cooldown is finished, the button is removed from the table, so it's never scanned. The button art is then updated to reflect any changes if and only if there needs to be a change (i.e., no longer on cooldown, or just starting a cooldown). Only buttons that are listed as having a cooldown are scanned (0-130, depending on how many have one). Hit on CPU and Framerate: small, if any. Ace mod, coded well You have 130 buttons. The OnUpdate code uses the the built-in OnUpdate code that Ace gives you (it throttles it for you, and you set it to update once every 0.25 seconds). The code for the sphere checks to see if the button is listed in the cooldown table. If it is, it then scans to cooldown and updates the time. If cooldown is finished, the button is removed from the table, so it's never scanned. The button art is then updated to reflect any changes if and only if there needs to be a change (i.e., no longer on cooldown, or just starting a cooldown). Only buttons that are listed as having a cooldown are scanned (0-130, depending on how many have one) Hit on CPU and Framerate: small, if any. On thing that REALLY hits the FPS is item checking in bags. I think Venantes has this issue, because people say that there is crazy sometimes while using it. If the lag is coming from Venantes, I'm sure it has something to do with the item updating code it uses, as well as the ammo counting and some other stuff. If an addon keeps checking stuff when it doesn't need to, it's just wasted CPU cycles. That's just common sense The thing that matters is the programmer's ability to have effecient code. I like to think that my code is effecient, but I know that there is some code that is sloppy and needs to be cleaned up. I need to grab a CPU profiler addon and see where my addon stacks up. I'm sure it's nuts at some points If you really want to see your FPS drop a little, go grab my Labyrinth minigame. That bad boy is not throttled (at least, not that much) so it updates CONSTANTLY. I think my FPS drops by 10 when it's running a game It's constantly raytracing, and that's not a cheap operation on the CPU!
|
|
|
Post by kyouraku on Jun 28, 2007 7:31:45 GMT -5
Thanks for all the information, Moon! I can totally understand you wishing to code LunarSphere with its own libraries and all that. I remember that MyRolePlay, the most extensive of the FlagRSP-like mods, was done the same way and was better for it. Do you think that it would be feasible to have some Ace2 integration? Maybe a Fubar plug-in, or make LunarSphere able to be skinned with CyCircled? For that matter, I really really like your icon and button set. Just recently CyCircled has made additional skin styles modular (check the Vol and GoldOrbs skins on the SVN) - would you be able to export them for use in CyCircled? I don't /think/ this would take much work. Also, the idea you had earlier about putting a line or two of Ace2 code so LunarSphere would be on the repository would be great One thing I love about Ace, is how easy it is to update! Anyway, thanks a lot for this mod. We've been waiting on one for a long, long time.
|
|
|
Post by Moongaze on Jun 28, 2007 20:02:17 GMT -5
Do you think that it would be feasible to have some Ace2 integration? Maybe a Fubar plug-in I guess the real question would be: What would I put in the Fubar? I guess access to the sphere settings window and locking/unlocking the sphere/buttons ... *shrug* Sadly, I don't plan on adding support for this addon for CyCircled, mainly because the skinning process used by this addon is slightly different and might not work well with CyCircled. I might investigate it in the future. On a side note, I do plan to add the ability to recognize skin types that CyCircled has, and populate my own skin list with them (sometimes after the public release). My addon will handle the skinning process and steal/borrow the art from CyCircled I might make my button skin artwork available for CyCircled in the future, but this will be after I'm done with the public release of LS. I don't know how many skins CyCircled has under its belt now, but adding my artwork might double, triple, or quadruple that amount. That would be insane ... Yeah, I was toying with that idea, just to give this addon more exposure. I'm sure the Ace guys would LOVE to have my addon jump on their bandwagon and only use a line of code, just to be recognized. Haha. Seems more like a slap in the face to them, which is why I'm still debating ... >.>
|
|
|
Post by kyouraku on Jun 28, 2007 21:01:31 GMT -5
Thanks again for the information! Hehe... well think of it this way? If LS takes off, its free publicity! People will come to Ace to get LS, and see all the other very fine programs they offer. CyCircled has about 10 or so skins in the default package, and 2 (vol, goldorbs I think) skins as addons which are separate entries on the repository. Your artwork alone would be a great boon to the CyCircled project, so that by itself should get you in the door with Ace people. From what I see so far, many of your icons are more intricate and would definitely be welcome. I know I'm going to use your Konoha leaf on my rogue Thanks again. I'll be migrating from Stage 3 to Stage 4 tonight ^^
|
|