Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Vincent

#41
Quote from: Khris on Thu 11/07/2024 12:52:55I checked the dependencies and they are kernel32.dll, msvcrt.dll, user32.dll and ws2_32.dll. All of which are in my System32 folder.
I'd love to have this problem solved, maybe somebody has an idea? I already added the dll as file exception to Windows Defender, too.

I am not good at it but what I can say is that I just putted the dll inside the ags editor folder.
I didn't had to put the dll anywhere else.

ps: im sharing the dll in case this was different: https://file.io/19TAECgoMK87
#42
Quote from: Khris on Thu 11/07/2024 12:45:34I wanted to test this myself but AGS tells me it's unable to load agssock.dll when I open the editor. Not sure what the reason is, IIRC it used to work on and off for me back then.

The error also says "it may depend on another dll that is missing" and I'm several Windows reinstalls down the line, so maybe that's the reason.

Well I didn't use the plugin you shared because I had it already so I believe they are the same, I think the reason might be what you mentioned because it just working good to me

ps: im using AGS-4.00.00.03-Alpha8 -video non blocking version
#43
@Khris first off I want to say that this module you wrote its so amazing as usual beautiful work, thanks for sharing! And yes I just realize that it was the ags_shell plugin I was using long time ago and not the socket one, my mistake. Btw as you say the https will not work unfortunately but still wanted to give it a go by doing something like this:
Code: ags
HTTPRequest.Prepare(String.Format("http://api.dictionaryapi.dev/api/v2/entries/en/%s", txt));
int HTTPCode = HTTPRequest.Get();
ClaytonMsg = String.Format("%s", HTTPRequest.Reply());

I dont know if im doing this correctly thought, I am getting some results which means its connected but it doesnt get the word im typing in.
ps: I had to quickly fix some lines replacing 'log' with 'logg'  but nothing more than that :)

@Perpetuall Cool good luck with it in the meantime.
#44
Quote from: Khris on Thu 11/07/2024 10:23:38Anyway, if somebody put a gun to my head and told me to implement this (I wouldn't otherwise) I'd probably use an existing online API and http requests via the sockets plugin.

This makes me laugh 🤣 cause is exactly what I thought at first but still want it to give it a go in Ags.

Quote from: Khris on Thu 11/07/2024 10:23:38Also, one of the hardest things to do is to upkeep a conversation; is your bot supposed to be able to do that? Like understand references to things previously mentioned?

Kind of yes, like if you type a specific sentence like "i want to eat" maybe it could upkeep the conversation otherwhise it will not. like if you type "how is the weather today" he might answer "I dont know that." Still, for some specific question I can might put the entire sentence on the Parser dictionary to check it easily.

Quote from: Khris on Thu 11/07/2024 10:23:38If I had to do this I'd probably come up with a bunch of base phrases like
"can I x y"
"how do you x y"
"are you x y"
etc., then create a RegExp-like parser that a) detects which phrase was used and b) what x and y are.

Thanks for your thought, this actually seems like a smart approach.

Quote from: Khris on Thu 11/07/2024 10:23:38I'd probably use an existing online API and http requests via the sockets plugin.

ps: @Khris I remember using the sockets plugin only for pushing a button and opening a web page but nothing more than that, how can I do this? Like to reference a word and doing a request?
#45
Thanks Khris.

Quote from: Khris on Thu 11/07/2024 08:23:54What are typical lines the user is expected to enter, and what do you want to recognize exactly?

That is a good question because the player can basically type everything which it sound more a massive task to accomplish. I can check easily if a specific question has been asked for example "how are you" by adding the entire sentence on the Parser dictionary. But the hardest thing is to catch the random stuff 🙄 like "how is the weather today?"

In my mind I have it something like this:
Code: ags
bool how;
int result_how = txt.IndexOf("how");
if (result_how != -1) how = true;

if (how)
{
  if (is) ...
  {
    //etc etc
  }
}

But doing like this in the long term I think it would become a big mess, so I was wondering to ask what it would be your basic approach to make it simple.
#46
Hey guys, I wanted to ask a quick question for those who are more experienced. How can I check what the player typed in a text box and respond accordingly by checking what pronoun or verb was been used? I tried this a few days ago and I kind of managed to make it work, but it looks like it will require a lot of lines of code and I would like to make it simple without writing some nightmare code. How would you start doing something like this? What it would be your first approach?
#47
Quote from: Crimson Wizard on Fri 05/07/2024 12:27:15You do not have to put video file inside the compiled folder, on opposite by default AGS packs ogv videos inside the game data if you place it in your project folder root.

Is this has been changed? Because I remember on old versions I coulnd't play the video if this wasn't inside the compiled folder or I remember wrong? Btw I just tryied to remove the video from the compiled folder and the game run just fine, I was surprising.


Quote from: Crimson Wizard on Fri 05/07/2024 12:27:15Returning to the previous discussion, I forgot to mention, that displaying a video on a GUI Button may be slower than on Overlay, because of how GUI is drawn in AGS.

Okay this is good to know thanks a lot! I wanted to play the video over a button graphic only for the purpose on having the video in front of the gui but you reminded me that overlay also have the zOrder so that's cool!
#48
That's right, thanks guys, the problem was that and I got it fixed now. Still thank you so much, I am so happy that this is working all so good!!! ❤️

[EDIT] @Crimson Wizard @Snarky sorry for bothering once again, I know this is outside of AGS's expertise but I wonder to ask this technical question. It's true that if you want to play a video you should have the file inside the compiled folder (unlike the audio files) but is there a way to 'hide' these videos so people won't see them but only inside the game? like having a 'secret' folder?
#49
Thanks Crimson, as I said I was missing something really basic!!  :) It's been a while cause I was a bit off from Ags in the last period. I got fixed the thing to display the video on a button graphic, I was using the button.graphic instead of doing button.normalgraphic 🤦 as you mentioned, thanks a lot! Still, I am missing something basic to play the video in non block style, now im declaring the VideoPlayer* variable outside of the function but it still need the wait to be displayed, sorry in advance

Code: ags
VideoPlayer *video;
// called on every game cycle, except when the game is blocked
function repeatedly_execute()
{
    video = VideoPlayer.Open("VideoProva.ogv", true, eRepeat);
    if (video)
    {
      btnVideo.NormalGraphic = video.Graphic;
      //video.Play();
      //Overlay *over = Overlay.CreateGraphical(0, 0, video.Graphic);
      
      //Wait(100);
      //over = null;
      //video = null;
    }
}
#50
Hello guys  @Crimson Wizard and @eri0o I got some free time to test this out and I would like to ask you some questions because I'm definitely missing something basic:

1) Althought I directly set the variable video.Looping = true; and opening the video with the repeat style set to eRepeat when the video ends it get black [EDIT] fixed by putting the code in rep_exe
Code: ags
  VideoPlayer *video = VideoPlayer.Open("VideoProva.ogv", true, eRepeat);
  video.Looping = true;
  if (video)
  {
    Overlay *over = Overlay.CreateGraphical(0, 0, video.Graphic);
    Wait(100);
    //over = null;
    //video = null;
  }
ps: I see that if I remove the Wait(100) the video won't start which I think it make sense but how do I avoid having the wait so while the video is playing I can interact with some other things?

2) Is there a chance to play the video on a button graphic? Because now im playing the video on an overlay but the overlay is below the gui and I would like it to play the video in front of the gui, how can I do that?
#51
Hello guys I was able to read the whole conversation just now!! I'm really happy that you guys managed to work out on this and from the tests I've tried from eri0o it seems like everything works great, really amazing work!!! As soon as I have some free time I'd like to try this version out and report something back, in the meantime still I want to thank you very much ❤️ both @Crimson Wizard and @eri0o
#52
@Crimson Wizard
First off, I am sorry for the late response, I didn't had much time to login in these days. Anyway don't worry, I know you guys are very busy fixing the engine stuff, so that's fine really. Indeed, I wanted to thank you for spending time on this plugin.

I downloaded the demo and everything is so beautiful, I'm very happy that now we can hear the audio from the video, this was one of the most important things (because on the old version you had to start the audio separately and sometimes it was difficult to synchronize the audio with the video) so for me this is a big one feature achieved along with the interactions with buttons while the video is playing, also having multiple videos playing at the same time is truly amazing, thank you very much, I am really happy!!

In the near future I will try to do also some tests on Android too to see if everything goes fine and I'll let you know.

Before you did this work on this plugin, I was trying to do the same "kind of test game" on Unity and basically now this plugin its working as Unity do, the only exception is that over there you have a chance to pause the video, in this state of the plugin is there a way to do that? If not then that isn't a big deal but if we could then I think it would be cool. Still thanks a lot for everything I really appreciated!!
#53
Of course its not a serious problem, I think your workaround will work just fine. I just wanted to know if the player appeared in the room not following the story variables but just "jumping over" on it and if that so setting some variables accordingly. The main reason of having this request was avoiding having a custom debug window but this seems a proper way to go ahead or using your workaround will just do all of this
#54
Quote from: Crimson Wizard on Wed 25/10/2023 15:21:25If you want to know that player appeared in the room not following the story, but "jumping over", then you could rather use your own "story"-related global variables to find that out.

Okay so I guess the only way is to make a proper custom debug window which handle also the 'story'- related variables, teleporting etc. Thanks everyone for the input


Quote from: Crimson Wizard on Wed 25/10/2023 15:21:25speaking of the teleport window result, it's possible to make the Debug function return a true or false value (1 or 0) depending on the player's choice.

You mean it can be done by editing the engine? I think that might could be useful, so maybe if the value is true then it means you teleported
#55
Well yea I thought about this too but there is a problem I think, I mean let's suppose I open the debug window by ctrl+x but then I do 'cancel' instead of teleporting, that variable will stay true because I hitted ctrl+x

:EDIT: yes, you can 'cancel' or 'confirm' the process of teleporting, also it would be interesting to have a feature to check if that specific debug window is visible or not apart from check if you use to teleport into a room or not
#56
If I press ctrl+x, selecting a room and teleport into it, how do I check with a global variable if I used the teleport or not? I mean the pre-defined Ags debug window and not a custom one, is there a way to do that?
#57
Quote from: eri0o on Wed 25/10/2023 13:30:45Erh, you can just set a global variable if you use and then unset it in your check.

I think I dont get what you mean, how do I check if I just used the teleport? I mean the one you show by pressing ctrl+X
#58
One thing I've always liked to have is a feature to know whether the debug window (for teleporting) is being used or not 🙄 what I'd like to do is teleporting to a room and then check inside the script if the player is inside the room by teleport or not something like:

Code: ags
function room_Load()
{
   if (game.debug_mode)
   {
      if (game.debug_teleported) ... 
   }
}

or is there a workaround to do this already without having a custom debug window?
#59
Thanks a lot for the documentation, I was misunderstanding that it was something new in Ags instead is part of this plugin
#60
What it means if the objects had Parents if I might ask?
SMF spam blocked by CleanTalk