Jump to content

DOWNLOAD MODS

Are you looking for something shiny for your load order? We have many exclusive mods and resources you won't find anywhere else. Start your search now...

LEARN MODDING

Ready to try your hand at making your own mod creations? Visit the Enclave, the original ES/FO modding school, and learn the tricks of the trade from veteran modders...

JOIN THE ALLIANCE

Membership is free and registering unlocks image galleries, project hosting, live chat, unlimited downloads, & more...

Mysterious Mr. Bear

Allies
  • Posts

    324
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by Mysterious Mr. Bear

  1. Get well soon, Mage- and good luck with your research project!! It's admirable you are working away even through these conditions, and evidence that it isn't going to hold you down. Heck, most people couldn't do a research project at the best of times! 

  2. Modding enthusiasm indeed!! Sounds like a hefty project you have planned.

     

    My very first post on the Bethesda Forums site was me announcing to the community I was going to create a mod called "Oblivion 2". It would seamlessly link together all the big mods for Oblivion in one big story and include various "fun" mods by fitting them into the lore, I would organise voice talent to voice them all and handpick graphical mods to get the feel right, then assemble a massive soundtrack from all the best community submissions. I would then put it on  multiple installation disks to be mass produced and distributed for free, in custom DVD cases with their own, re-written manuals for all the new content. I planned to do this despite only opening the CK once, and running Oblivion on low settings with emulated hardware... on a six year old... macbook.

     

    I'd like to say I was joking, but this genuinely was how I introduced myself to the mod community :P The forum at large reached through the computer screen, lifted me from my comfy safe chair, and carried me away to be burned at the stake in the greatest flame thread known to man. Three of my modding heroes (including Hex, the awesome guy behind Unnecessary Violence) who's mods I loved and wanted to include personally (and rightfully) tore me a new one. Bearing in mind that these guys were like mythical beings of greatness to me, it felt like the gods themselves had at last stepped down from heaven, only to smite with the thunderous rage of zeus before returning to their lofty palace in the clouds.

     

    To cut a long rambling story short, I took my burned, shrivelled self here, a place of comparable peace and sanctuary, to learn the ways of the modder in the same way a down-on-his-luck stockbroker might shave head his head and travel to the mountains to start his new life as a buddhist monk. I did as you are doing now- set about learning what I would need to know with my end goal in mind. Along the way I found myself distracted by new ideas though, and ended up working on and finishing a multitude of projects, the last of which was second place for file of the month! (losing, of course, to a big boobie mod). I never really let go of Oblivion 2 in my mind along the way until Skyrim came out, by which point I had realised everybody makes their own Oblivion 2 anyway when they mod their games, and I was simply forcing my own preferences on others.

     

    What I'm trying to say is this: Hanassie is definitely right when she warns about over facing yourself. You have made a thread asking enough questions to keep the modding equivilant of The Justice League busy for a few days, and the thread is called "Newbie Questions"! It's clear you have a lot of experience with modelling and texturing and would probably find it easy to adapt those skills to work with the creation kit in no time, and your idea is nowhere near as far fetched as mine was, but your planning to do the sort of thing that 7 paid professionals might do for a job in your spare time.

     

    My advice however, is definitely not to abandon the project, or even put it aside 'for now". Throw yourself at it, make lists of every skill you will need to learn, divide it into manageable sections, and don't be put off if you fail a thousand times if you have succeeded even once. Be as uncompromising as you like, but allow yourself to be distracted. If you are working on talking animals, and figure it out, and make a cool talking rabbit companion, why not turn that into something stand-alone? If you were working on one thing, and you start experimenting and it kind of turns into another thing, thats fine; see where it goes and release it, because it's all experience. It will feel great getting something done, which is MUCH needed when your sat working on the same thing for months at a time with no relief; I've been working on the same mod for a year now, and it feels awful just looking at the thing because i've not had the reward of releasing something and finishing it and being proud of it in so long. Don't be disappointed in yourself if you find your mind wandering or you need to take a break; it's not settling for less, it's being open minded! :)

     

    Whatever the case though, don't ever lose the "modding enthusiasm" that makes you charge headfirst into things you have no idea about. As soon as you realise you have a comfort zone, smash it to bits and run as fast as you can! Sometimes, the only way to get anywhere in modding is running off the edge of a cliff wondering if you can fly or not, even if it means learning to do so from the rocks below. Or in my case, arrogantly stumbling off a cliff and flapping for 3 years until everyone had stopped throwing pitchforks at me :P

     

    As for practical advice with your problems, I know you came here for quick advice, but I would warn you away from trying to find fast solutions. (Sorry, If someone said that to me when I was looking for help I know I'd want to eat their face.) Instead, look for help finding your own solution. For example, I know there are several tutorials on how to get talking animals working that tell you exactly what buttons to press and what boxes to tick. However, as soon as you want to do something NOT covered by the tutorial, you have no knowledge to fall back on. (this happened to me many, many times :P) Start by looking at the animal companions that use the dialogue system that are already in the game- like that talking dog from the deadric quest. See what boxes are ticked and what scripts are used, then search them in the creation kit wiki. Thats not to say that asking for help is bad, and I'm not at all being snidey; this place is here so everyone can help eachother and share their experience, and I'm always asking for help here when I'm stuck on something! I just found that the more I poked around for myself and investigated, the less questions I had to ask, and the faster I solved things in the future. 

     

    Anyway, enough rambling about things. Good luck with your project, and I hope you have as much fun as I did learning the ropes! I hope I haven't said anything to discourage you, that wasn't my intention. You certainly came to the right place- I tell everyone that listens that the alliance is the best place to learn, not only from the enclave, but just from talking to all the great modders here!

    Mysterious Mr. Bear :D :D

     

     

     

    PS: A tip for a new user of the CK: The CK is not your friend. Don't trust that thing with a dime. The CK isn't your noble steed, the CK is a starved, rabid mountain lion you are trying to ride to glory. If you aren't constantly asserting your dominance to this thing like an emotionally insecure high school jock, it will turn your beautiful creation into an inside out, back to front, upside down husk of a Friendship Is Magic conversion mod. Seriously, if something isn't working, consider ANYTHING to be the culprit, even if it seems impossible. Your NPC hasn't arrived at the destination: is it the package? Is it the pathgrid? Is a door accidently locked? Is he scripted? Do you have another mod overwiting your changes? Do you need to try with a clean save? (some changes, especially with activators, don't take place until you start a new game). To misquote Sherlock Holmes: When every possibility is exhausted, consider the impossible.

    • Upvote 1
  3. The issue is still there, but preferred pathing certainly helps cover over it a fair bit, they seem to be at least aware there is a difference between the floor and the walls now! :D Hopefully with some clever goldenising of my pathgrid I can smooth out the issue even more... thanks darkrider, don't know how I didn't think of this earlier!!

  4. Ah, sorry, I should have been more specific:
    I'm using the latest version, but I mentioned the 1.6 patch in particular because it was the one that fixed the Navmesh bug (which was my first, desperate thought)

    I'll try that now DarkRider... it's strange though, they are walking where there isn't a path at all!

  5. Hi, I try not to post too many questions here and work them out myself, but I am just... my mind is blown by this one. 

    Everyone was just stood around my outside location like a lemon unable to move, so I figured I must have messed up the Navmesh. I re-generated it, but then of course everyone was just bumping into walls and getting themselves stuck. So I spent some time tweaking it, made sure they cell boundries linked, made sure I cut around obstacles, kept it fairly simple...

     

    ... and nobody cared.

     

    They just bump into stuff, walk into mountains and get themselves stuck anyway. I even tested it in the creation kit to see if it could draw a line from one side to the other, tested specific problems the NPC's were having this way, and it all worked fine. Then in game... they just don't care! It's brutal! Even WITH the auto generated navmesh, there was NOTHING that could cause an NPC to walk into the side of this mountain. But that didn't stop them: I tell them to walk to the top of it via the clearly designated path, and they just bump into the side of it. This has been going on for a month!! Why have the gods forsaken me?? It's like working with toddlers!!!

    Has anyone had this before? Could anyone think why it is? I have nothing but the official add-ons and my own mod installed. I have the 1.6 update too, of course. A million thanks to anyone who can solve this, I'm close to giving up on this mod completely now and I've been working on it since the CK came out!

     

    Bear

    • Upvote 1
  6. WillieSea is (of course) absolutly right- I don't know why I didn't remember this, considering he taught me the same thing when I was doing all this kind of stuff :P

    The way this system would work would is much simpler. Lets say you still want the two upgrade system from my post.

    You create an Xmarker object (it's a type of static that can't be seen in game) and name it Upgrade1, and set it to "initially disabled". You then create Upgrade2 in the same way.

    You then select every object you want to enable for the first upgrade one by one, and like willie said, go to the enable parent tab and link it to the x marker "upgrade1". (if this concept confuses you, which it did me, it is covered in the reference wiki page I posted earlier).

    Then, your script just needs to say "upgrade1.enable()". This will enable the xmarker you created- which will in turn tell every object that you have linked to it to enable. Think of it like this- when you set the xmarker as the enable parent to all of your objects, the objects become the children. Then, instead of having to tell every object individual to enable itself, you just tell the parent- and it tells the children for you.

    Again, sorry if I am over explaining, I just remember being very confused by this concept at first... :P And your right, yeah! You can get rid of rubble by just reversing the procedure.

  7. Hi!

    That's actually much easier to do than it might seem, and you are on exactly the right line of thought. :)

    1) Create the fully furnished faction as you said, then select each piece of furniture you want to be "turned off" at the start. You will see an option for "initially disabled"; tick this box. As it sounds, this makes the furniture invisible and untouchable to the player and A.I, as if it wasn't there. (we will be re-enabling it later)

    2) You will need to give every single piece of furniture that you want to have "turned on" a unique reference name. This is so later, when you create a script to enable the furniture, you will be able to point the script directly to the objects you want enabled/disabled. This can be done from selecting the furniture, and in the box that appears, entering the reference name you want it to have in the "Reference Editor ID" input box. It is wise to use naming conventions here- for example, if you want to have the furniture purchasable in two seperate upgrades, name them "upgrade1a", "upgrade1b" etc, then "upgrade2a", "upgrade2b". Using conventions like this saves A loooooooot of hassle, trust me :P

    3)Now you will need to create your script to enable the objects. You can do this through dialogue- there is an option to execute a script when a certain piece of dialogue is said by a character. This will essentially be:

    upgrade1a.enable()

    upgrade1b.enable()

    getplayer().removeitem (gold, 1500)

    (note, I wrote that from memory and havent scripted in a while so it might look a bit different!)

    You can find tutorials for step 3 on this website or around the web, looking at the wiki pages for dialogue and object scripts would probably help to. When you get up to making the script I can give you a few more pointers (I'm just presuming you've not scripted before, sorry if I'm teaching granny to suck eggs :P)

    That's basicly it! Obviously that is a very simplified set of instructions and if you've not done this sort of thing before, you may need to look things up or find tutorials. It may turn out there are extra steps you need to take, maybe to make the A.I. recognise the furniture or ensure the furniture doesn't redisable itself, but you will have to discover those through testing...such is the nature of modding! :D

    Hope that helped, and happy modding :) (I'm sure there is someone around here far better than me at explaining these things, if I was useless :P)

    Useful wiki links:

    http://www.creationkit.com/Reference

    http://www.creationkit.com/Disabled

    http://www.creationkit.com/Dialogue_Views_Tab

    http://www.creationkit.com/Bethesda_Tutorial_Dialogue

    Mysterious Mr. Bear :D :D

    • Upvote 1
  8. Oh my goodness.

    Through an entire day of trial and error, litterally the whole day, I have solved this problem. The solution was as inexplicable as the problem itself, and I am currently very confused, but very very happy.

    I simply changed the "hasspell" condition on the packages from a "run on subject" to a "run on package data", and then created a single reference in the package that pointed to the package user. So it STILL basicly pointed to the subject, just via package data.

    And now, it works across cells.

    I challenge anyone on the face of the earth to tell me why :P In the meantime, I am going to have some pie, because I haven't actually took a break from this problem long enough to eat.

  9. There is another way. With the advent of Fallout, you can actually implement your own 'activation menu' under certain circumstances.

    Its hard to explain, and I have only done it in FO3, which was several years ago, via a perk.

    For example, you create a perk, and the 'Perk Entries' includes an 'Entry point' type.

    Type is 'Activate', Function is 'Add Activate Choice', you give it a 'button label' which shows that text when you activate the object.

    There are several things you can do, even add scripts.

    The 'Conditions' section, you can add 'IsSneaking == 1', and perhaps a certain base actor is being activated from the 'Target' tab. Perhaps use the 'GetInFaction' and put all your NPCs you want in that faction.

    It may or may not work for you, I really have not looked into it with Skyrim, but it might be worth a try.

    Hi, sorry for the late reply, my internet has been down for quite some time!

    I'm really stuck on this one. I have implemented my own solution to the problem, which is this:

    My actor, Watchman01, has a list of 15 packages. Each package has a condition for the subject to have a certain spell. This means no package is active at all unless the subject has one of the 15 spells. I then added papyrus fragments to 15 dialogue options, each adding one of the 15 spells to the specific instance of watchman01 (of which there could be as many as 40-50). This means I could control the packages of specific instances of the same baseactor through dialogue!

    However, I have a very, very unusual problem.

    If the target of the package is in the same cell as the actor, he will happily stop what he is doing, walk to the new location, and begin sandboxing. I can move him around the worldspace with ease. However, if the target of the package is on the other side of a cell boundry, he will simply stand in place, refusing to move. eventually he goes back to his default editor location package. This is a major, major problem, since the centre of my camp happens to be on the centre of a cell devide. I have checked and refinalised the navmeshes but still this problem persists.

    Now here is the strangest thing:

    If I remove the hasspell condition from one of the packages, all of the watchmen01 instances cross cell boundries with no issue to reach the target!! Litterally, when I add a hasspell condition to the packages, they become incapable of crossing cell boundries. What the devil could be causing this??? (the spells are all set as abilities and have no magic effects if that makes a difference)

    I hope I have explained this well enough, and that someone finds it and offers some help... SO stuck on this tiny tiny thing. Very frustrating...

    Mysterious Mr. Bear

  10. hmm..

    Well, your using the same button to choose what menu you want as for what item you want to place. That doesn't sit well for me- why not try creating a new variable "button2" and using that in other menus? It's possible that after choosing the first option from the menu, therefore setting "button" to 0, all other attempts to read the value of "button" are reporting 0. Worth a shot?

  11. Yeah that sounds possible- if there was a DOF effect in your last mod, and no DOF effect in this one, left over files might result in a constant blur... but I'll be honest your guess is as good as mine if this is the case XD I had a similar problem once (though said EMB was much simpler by the sounds of it) and to fix it all I did was check the contents of the download compared to the contents of my skyrim folder- turned out I had left over files as you said, and one file had been accidently placed into the wrong folder.

  12. Helooo everyone! I try not to spam these forums with questions but this has me stumped and I know this place is teeming with genius...

    The situation is this.

    I have re-used, generic NPC's in my mod, meaning up to 100 of the same baseactor at a time. The long and short of it is, I want to be able to access the script and change the variables of each individual NPC (all with the same baseactor) via dialogue. This is proving... difficult, to say the least :P

    The way I achieved this in a previous (oblivion) mod, was that by crouch-and-activating an NPC it activated a menu from within the npc's OWN script, and I could then change variables that way. However, this had it's own bunch of troubles, and relied on commands that are no longer present in skyrim.

    The way I access the script of QUESTS is by creating a property

    
    AAMBcDailySCRIPT Property Dailyscript auto
    
    
    Which points me to the quest ID of the script. However, since I am using NPCs that all have the same baseID, this will obviously not work. Is there any conceivable way to achieve this or will I have to find some way to sidestep the problem again? I have been considering the following as a papyrus fragment in dialogue:
    
    (getowningquest() as AAMBcBPdialogequestSCRIPT). aambcplayertarget = AKspeaker
    
    (getowningquest() as AAMBcBPdialogequestSCRIPT). aambcplayertarget.scriptname. variableIwanttochange = 1
    
    
    This would work by having a script named AAMBcBPdialogequestSCRIPT that is owned by the same quest as the dialogue. That script would hold the variable "aambcplayertarget" that would detect who it is the player is talking to- therefore, using
    
    aambcplayertarget.scriptname. variableIwanttochange = 1
    
    

    would HOPEFULLY change the variable of the actors script.

    What does everyone think of this? Does anybody know a way of doing this anyway, that is similar? I hope I have explained everything properly!!!

    Thankyou for reading this far,

    Mysterious Mr. Bear :D :D

  13. Sorry if this is a stupid question but did you choose "install by manager"? I know some modders accidently leave this on their ENB profiles, and from what I've heard, it can cause a hell of a lot of problems for everyone...

  14. Hellooo!! I'm very bad at explaining things but here goes:

    If I am right, the problem that you have here is that the script is ending before the request for a message box is proccessed. The best way to get around this is to create a loop with "while" and "endwhile" instead of using "if" or "endif". The way these work is that your script will effectively loop between the "while" and the "endwhile", meaning it cannot get any further, and it cannot end. It means changing the layout of your script, but it worked for me. Try adding the code:

    
    Done = 1
    
    While Done != 0
    
    
    to the top of your script, and
    
    Done = 0
    
    Endwhile
    
    

    to the bottom. This should create an infinate loop around your code, ensuring the script does not end. It SHOULD work, because I made a multi-messagebox script with this method, but my script was set out very differntly, so if it doesn't work for you, I'll post how I did it, so you can try that...

    good luck!! :D

  15. Glorious. It's working. :jellytime:

    Lesson I have learned: Spending a day of college grinding away at one problem does not result in it getting solved faster, it results in you making a thousand tiny mistakes you normally don't. Thankfully they are all fixed... for now....

    Thankyou everyone for help and patience, and sorry for my idiotic spam... though I will not apologise for the dog picture, because it's pretty funny.

    Mysterious Mr. Bear :D :D

  16. Made a new object... no dice. What have I done wrong??

    That was a genuine question, not a down on my knees, shaking my fist at the sky, scream of despair to the god of modding himself.

    Actually, it was both.

    EDIT:

    .... this script extends a quest, I see.

    As in, a quest that is not an object, I see.

    And this thing I have been attaching it to is not a quest, I see. But an object.

    I see.

    Interesting.

    Very interesting.

    i-have-no-idea-what-im-doing-dog.jpg

  17. GOOD SWEET LORD OF MERCY.

    It's STILL not working!!! How long is this going to MESS up for???

    I have attached both scripts to objects, auto-filled BOTH scripts properties (and checked the were right), both scripts are RUNNING, but IT'S STILL NOT DETECTING THIS NUMBER AS A MINUS NUMBER!!!!

    Right. I was still getting the daily messages BEFORE I followed these steps of object-attaching and property filling, and I still get it now. However, I added an activate event to the script that detects the minus number (the one that is not working) and yet when I activate the object, nothing happens. When I run ShowVariables, It comes up saying no papryus scripts are attached. Even with a clean save. There is surely some tom-foolery here, yet when I open the base object the script is attached and autofilled there, and when I open the reference the script is attached and autofilled THERE.

    I'm going to try with a new object. But please for the love of god, let this work, because this is such a small little thing and it's held me back longer than everything in the mod combined.

    Eagle, do you have that video on youtube or anything? Cos I'd love to see it, just to check I'm not being an idiot.

  18. Holy-waste-of-time, batman!

    After ALL of this time, it turns out, by going into the CK and mapping the property of "charter" in my very original script I posted here, it would have fixed all of this from the start. The issue was that my script making these changes was linked to my script holding my variables via this "charter" property- by simply attaching my script making the changes to an object and assigning this property to the correct object in the CK, it would have worked fine without globals!

    Ah well eye, at least it will work now I have followed Eagle's advice :) We really need a stickey''d "hints and tips" thread here, for all these little traps and potholes to trip up on that are too small to mention in a lesson or an indidual thread... but thankyou everyone, I swear this website patches up and fixes 50% of the scripts I make :P

  19. Ah of course!!! I forgot that things like references, objects, and apparently globals all had to be linked with the CK... I spent about a day finding that out when working with object enabling! Bloody hell... right, I'm going to add all of this globals the official way then :P

    eye ya yeye.... I'd forgotten what working on the CK is like. If I'm not fixing a problem, I'm probably fixing a solution!

    Thanks very much, sometimes it's these small little things that trip people (and bears) up. I'll post back here if it works (though I'm presuming it will, cant see anything else that could go wrong as williesea has ironed out a lot of possible problems allready...)

  20. Right, my new script works as follows.

    I have declared all the global variables, as

    GlobalVariable Property AAMBMaterialsGBL  Auto  
    
    GlobalVariable Property AAMBMaterialsPROGBL  Auto
    ect I have then declared all the variables as
    float Materials 
    
    float MaterialsPRO
    ect I have then put the following at the start of the script
    Materials = AAMBmaterialsGBL.getvalue ()
    
    MaterialsPRO = AAMBmaterialsPROGBL.getvalue ()
    ect and this at the end of my script
    AAMBMaterialsGBL.setvalue (Materials)
    
    AAMBMaterialsPROGBL.setvalue (MaterialsPRO)
    ect The script works as usual when I activate the activator, and I can go through the menus and the variable amounts remain consistent throughout. However, when I leave the menu and re-activate the menu, all the variables have gone back to zero. This means the script is failing either at the point where the variables are set to the global variables at the start, or where the global variables are updated at the end. (or both). Now seriously, what am I doing wrong here, because this took a good hour or two and it's still not working. I know I used floats instead of ints, but that was just to cut out the awkwardness of swapping between the two- I have tried it with ints originally (using getvalueint and setvalueint) but this did not work either (same problem). My globals are all set up as "floats" (as apposed to shorts or longs) and none are set to constant. They all have a starting value of zero. PLEASE someone tell me where I'm going wrong here because it's driving me up the wall!!! EDIT: also, the syntax both you and the wiki suggest is
    int myGoldAmount = LevelersMaxGoldGBL.GetValue()
    Which I presumed means it should be used when you declare the variables, so instead of
    float materials
    you would have
    float Materials = AAMBMaterialsGBL.getvalue()
    However this came up with the following error:
    AAMBcCharter2.psc(35,18): no viable alternative at input 'AAMBMaterialsGBL'
    so, I tried using it during an Event, so instead of
    AAMBMaterialsGBL.setvalue (Materials)
    you would have
    float AAMBMaterialsGBL.setvalue (Materials)

    however THIS reported the following error:

    AAMBcCharter2.psc(78,25): required (...)+ loop did not match anything at input '.'

    So what on earth am I doing wrong HERE as well?

  21. Aaaah right! So to use them in these scripts, I would have to first set all of my properties and variables to the global settings

    FundsIN = FundsINGBL.GetValue() as int

    FoundsOUT = FundsOUTGBL.Getvalue() as int

    ect, ect

    do all of my scripting

    then at the end of the script,

    FundsINGBL.setvalue(FundsIN)

    FundsOUTGBL.setvalue(FundsOUT)

    and then these can be used in multiple scripts through this method?

  22. Ok, I've been working on it, and I think I have got to the bottom of it completly by accident.

    Firstly, I duplicated an object I made with a faulty script (this script holds the variables like FundsNET fundsIN etc). It was faulty because I had been working on it and not finished it when I got distracted by this- it works fine storing the variables but it can only be acitvated once, because the script only runs if the variable "Ready" is equal to zero and the script does not set this back to zero before finishing.I intended to turn this duplicate into a new object and attach a new script, so I could run "SV" console commands on it in-game and check the status of these pesky minus variables. But I forgot to do this, and so ended up with two identical objects with the same script.

    When I activated these, I noticed that I could activate BOTH of these, and the menu would come up once for each one. This means that the "Ready" variable was not being stored globably- it was seperate to both of the objects. that means there were two differnt instances of the same variable.

    ...MY ENTIRE SCRIPT IS WORKING ON THE CHECKING OF THESE VARIABLES!!! If the script AAMBcCharterSCRIPT can exist twice with two competly differnt sets of variables, how can AAMBcCharterSCRIPT. FundsNET ever display the correct variable??

    That was very badly explained but I hope you understand where I'm comming from... the reason FundsNET is not being read as below zero is because it is a variable in an object specific script, and is being called from outside of that script without any way to specify the object.

    My plan of action is... well, I don't know. This complicates things because these variables need to be manipulated in at least four differnt places- from the players tent, from interaction with NPC workers, from interaction with a merchant NPC, and from random events.

    New question: how do I ensure these variables are global? Turning them into.. well, global variables seems very complicated as the scripting changes completly and I get the impression this is not how they are desinged to work. Do quest scripts store variables perminantly, in a way that can be modified by other scripts? or is there a way to specify WHAT OBJECT to get the FundsNET variable from when I call AAMBcCharterSCRIPT. FundsNET? Any work around here would be appreciated.

    Thankyou,

    Mysterious Mr. Bear :D :D

×
×
  • Create New...