Jump to content
  • Advertisement

Miss

Member
  • Content count

    88
  • Joined

  • Last visited

Community Reputation

175 Neutral

About Miss

  • Rank
    Member

Personal Information

Social

  • Twitter
    codecatt
  • Github
    codecat

Recent Profile Visitors

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

  1. I haven't yet. It might be worth a shot trying! Thanks for pointing out the trial is in the sidebar by the way, totally missed that when I was looking at it!
  2. The original JIT repository is pretty good, but crashes for us after a while. Too bad it's not really getting many more updates. I'm glad you're maintaining a fork! Ps, I've looked at some of your audio plugins, the Angelscript prototyping plugin looks really cool! Is there a trial/demo available for it? I actually had an idea of making a similar plugin a while ago but never got around to it.
  3. Miss

    CScriptHandle null

    Ah, that explains a lot! Thank you.
  4. Miss

    AngelScript in Highlight.js

    Thought I would report that my pull request for Highlight.js has been merged, so it now has support for AngelScript! https://github.com/highlightjs/highlight.js/pull/1798 Hope this is useful to some! I know that Discord uses highlightjs for their syntax highlighting, so it will hopefully also work on Discord soon.
  5. Miss

    CScriptHandle null

    Is it possible to pass a null handle to ?&in parameters? For example, in 2.32.0 this causes a null reference exception: SomeObject@ obj = null; ref x(obj); The constructor for ref takes ?&in, so it kinda makes sense it dereferences it... Would it be possible to still catch when null is passed? (When passing non-null, the typeId passed to this function does not have the asTYPEID_OBJHANDLE flag set either.) (I'd like to handle this case for a separate thing, but CScriptHandle is the easiest example to demonstrate the problem.)
  6. Miss

    MSVC optimization bug?

    15.8 is out! https://blogs.msdn.microsoft.com/visualstudio/2018/08/14/visual-studio-2017-version-15-8/ Will confirm whether this is fixed in a few hours Thanks MS!
  7. Miss

    Will there be more frequent updates?

    Completely understandable, of course! Some of the fixes I'm personally required to use the WIP version now is the ones I've reported (of course), and also (I believe it's the one that was causing me troubles): "Fixed problem in compiler that didn't release a temporary variable when passing anonymous object to function expecting ?&in" (It might've been something else, but I had some refcounting issues a while ago that were solved after updating to the latest WIP.) And of course any of the symbol name resolver fixes (for ambiguous class names etc) are very welcome too. I don't have anything to contribute at this time, but if Angelscript was hosted on Github, the better accessibility of reporting issues and code contributions would be a great thing to have. Perhaps not many people know how to report Angelscript bugs or how to send in patches, or they don't have or want to make a Gamedev.net account. Github's issue tracker is pretty good for that, and the Pull Requests section makes it a lot easier for people to contribute patches (no need to figure out how to make a diff and then email it, etc.). It also has the diff reviewing like Winmerge directly in the browser, and you can comment on specific sections or just edit their diff yourself. It's a lot more convenient for both parties, in my opinion. Of course, that would all require you to switch from SVN to git, which of course is also a big decision! But perhaps switching to Github would also increase the amount of people using Angelscript, which would be awesome as well. Github mirrors can be nice, but it wouldn't really add value to the issues/pull requests sections, I think.
  8. Hi! I don't see this question asked a lot, so figured I'd jump the gun and just ask. The last update for Angelscript was in December of 2017, while the current WIP version has a whoooole lotta fixed goodness in it. It would be cool if there were more frequent updates every couple months since there's always some good (and sometimes necessary) fixes in. I can imagine some updates along the lines of 1.32.1, 1.32.2, etc. While my personal projects always use the latest WIP version for stability sake (there's some critical refcounting fixes I needed), our game Heroes of Hammerwatch is currently still on 1.32.0 which doesn't have these fixes, as we're only really updating with every stable update. Is there anything stopping 1.33.0 to release anytime soon, or more frequent 1.32.x versions to appear? Is there anything we can do to help speed up this process, eg. collaborate on code/testing/QA? Or would you recommend using the WIP version either way, even if stability is a priority? (Ps, I'd love to contribute code via something like Github pull requests, but since Angelscript is on SVN, it's a bit harder to share patches. Have you thought about switching to Github? I think it might've been asked before, but it [hopefully] doesn't hurt asking again )
  9. Miss

    Multiple scripts with the same function names?

    In your case I would recommend using modules, that way you get to keep the syntax you want.
  10. There's this code in scriptdictionary: (there's one for int and int64 too) else { // The stored type is an object // TODO: Check if the object has a conversion operator to a primitive value *(double*)value = 0; } return true; However, as it's not implemented and doesn't work, why doesn't it return false here? I changed the code to return false here so that we can detect wrong types added to this in our own code.
  11. Miss

    Refcounting in opCast

    Thanks to both of you!
  12. Miss

    Refcounting in opCast

    Thank you!
  13. Miss

    Refcounting in opCast

    It's an asCALL_CDECL_OBJFIRST, implementation here: https://pastebin.com/ybuVSTHj
  14. Miss

    Refcounting in opCast

    No, it's actually a custom class "MwBuffer". The interface is documented here: https://openplanet.nl/docs/class/MwBuffer The code for opIndex looks like this: static void ScriptBufferIndexer(asIScriptGeneric* gen) { CFastBufferBase* self = (CFastBufferBase*)gen->GetObject(); int dwIndex = gen->GetArgDWord(0); if (dwIndex >= self->m_Count) { asGetActiveContext()->SetException("Index out of range in buffer"); return; } int returnTypeId = gen->GetReturnTypeId(); asUINT typeSize = 4; if (!(returnTypeId & asTYPEID_OBJHANDLE)) { typeSize = GetTypeSize(gen->GetEngine(), gen->GetReturnTypeId()); } void* pObj = (char*)self->m_elements + typeSize * dwIndex; gen->SetReturnAddress(pObj); }
  15. Miss

    Refcounting in opCast

    I have an function declaration of "void opCast(?&out)" on a class with asOBJ_REF, and I'm running into an interesting problem. In 1 very specific case, (I can't seem to reproduce it in a clean test script), there seems to be either an AddRef too many or a Release too little. I can fix it by making a small change to my script. The following causes there to be 5 AddRef's, and 5 Releases, which is the expected behavior: auto a = g_scene.Mobils[0]; auto b = cast<CControlBase>(a); if (b !is null) { // ... } else { // ... } But the following produces 5 AddRef's and 4 Releases: auto b = cast<CControlBase>(g_scene.Mobils[0]); if (b !is null) { // ... } else { // ... } I checked if the typeId happens to be different in the opCast function (thought maybe const could be at play or so) but it seems like that's the same in both situations. I do an AddRef myself in the opCast function when returning the casted handle.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!