Nothing to see here, move along please

I’ve finally realized that I simply have no interest whatsoever in maintaining this blog anymore, and have decided that I will be shutting it down soon.  I had been meaning to redesign and repurpose it, but it’s just been sitting idle, so I think it’s time to stick a fork in it and call it done.

I’ll leave it up for a little while longer, but expect it to disappear in the next week or so.

Thank you everyone for the past feedback and discussions :)

 

So long and thanks for all the fish

Taketori update coming soon, Wave Katana retired

rip-wave I’ve been insanely busy lately in RL, due primarily to the need to pay bills and make ends meet despite having recently been laid off from my day job, so I haven’t really been able to give C:SI the attention it deserves.  I still only have one weapon for sale, and I’ve been getting a very large number of private requests for the Taketori and Wave weapons, far too many to reply to with any kind of consistency or in a timely fashion.

My apologies to everyone who has sent me such a request and never received a response.

It’s partly because of that situation that I’ve had to come to a decision that was very difficult for me.  It’s fairly well known by now that the Wave Katana has some very serious issues.  I’ve reviewed the code, and I think at this point that I have a pretty solid understanding of how to resolve those issues, but there are some pretty hefty obstacles that prevent me from being able to do so in a non-disruptive manner. 

Firstly, fixing the issues would require a great deal more free time than I currently have at my disposal, not just for making the changes to the code but also to thoroughly test the changes and ensure that I don’t make the problem worse in some unanticipated way.  Secondly, unlike my other weapons, there’s simply no way short of a full system update to ensure that everyone is using the same version of the Wave, which would only exacerbate the problem and is not an acceptable situation by any definition. 

I’ve therefore decide that the only tenable solution is to stop sales of the Wave indefinitely.  It may be possible to someday offer it again when the C:SI system goes through the next full-system update, but I don’t know when that might occur, so at least for the foreseeable future the Wave is retired. 

I know a lot of people won’t like that decision, and I do understand, but I strongly believe it is the correct one to make in this situation.

For those who are interested in the Taketori, I will be making it available again Soon™.  It’s a more involved process than I’d like to set up the networked sales server and vendors, so it will have to wait until I can find a solid chunk of free time, but depending on what happens with my RL schedule I am hoping that it’s this week.

Simulating llSensor() in Blue Mars

While I’m quite sure that there are probably more efficient ways to get the same kind of information, I decided to spend an hour seeing what it would take to simulate the familiar LSL function llSensor() in Blue Mars. Below is a lua function that detects all avatars within a given radius, and narrows down the list by an angle (given here in degrees).

You can see a video of the function being tested below.  In that video, I have set the range to 5 meters, and the angle to 180 degrees. When the function detects any avatar, it updates a simple Flash HUD to show a notification that an avatar was detected. Very simplistic, but it should be enough to show that it works.

Obviously this function does not support the full range of functionality that llSensor() has, but it should be enough to extrapolate from if such a thing were desired.

Returns a Table with a .count property indicating the number of avatars detected, which can then be retrieved using table[index] notation:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
function ARSensor( range, angle )
 
	-- For ease of testing, angle is passed as degrees
	local halfAngle = (angle * g_Deg2Rad) / 4;
 
	local player = g_localActor;
	local playerPos = player:GetWorldPos();
	local playerDirection = player:GetDirectionVector();
 
	local detected = {};
	local detectCount = 0;
 
	local avatarFound = false;
	local nearby = System.GetEntitiesInSphereByClass( playerPos, range, "Avatar" );
	for i,v in pairs( nearby ) do
 
		local detectedPos = v:GetWorldPos();
		local relative = vecNormalize( vecSub( detectedPos, playerPos ) );
		local dot = vecDot( relative, playerDirection );
		local angle = math.acos( dot );
 
		if angle <= halfAngle then
 
			local entityName = v:GetName();
			local entityPos = v:GetWorldPos();
			local entityDir = v:GetDirectionVector();
			local entityDist = DistanceVectors( playerPos, entityPos );
 
			detectCount = detectCount + 1;
 
			detected[ detectCount] = { 
				name = entityName, 
				pos = entityPos, 
				dir = entityDir, 
				dist = entityDist 
				};
 
		end
 
	end
 
	detected.count = detectCount;
 
	return detected;
 
end

CodeName: "Choppy Choppy"

The-Last-Samurai--46298 Do you ever play the "Band Names" game, the one where you try to think of a cool-sounding and unique band name?  For me, it usually results in some pretty goofy-sounding phrases (witness above), though I do occasionally come up with something kind of almost halfway clost to being mediocre.

“There are only two hard things in Computer Science: cache invalidation and naming things”.

Phil Karlton 

I’ve been playing the same kind of game for the last few years with trying to find a cool-sounding name for a samurai-themed video game, with no real fantastic results. I was talking via IM with Esprite today, and he joked about making it the subject of a blog post…

So here’s the question: If you were designing a samurai/ninja/monk/japanese video game from scratch, what in the world would *you* name it?

Oh my that’s a lot of comments!

Goodness… My last post is clearly a hot topic, I’ve never had so many comments on a single post before.

I still have not caught up, been insanely sick, but I’m actually up and about today and feeling much better, so I have some heavy reading ahead of me tonight, apparently.

So, while I’m busy doing that…

Open Thread – Discussions about Wave Katana and balance

I have a really heavy RL schedule this morning, and it’s going to be insanely hectic for me, so when I woke up this morning and saw that there were several comments on my last blog post regarding balance issues with the Wave Katana, I was not able to get up to speed before work interfered.

Rather than having that discussion attached to an unrelated topic, I thought it might be good to add a new post where that discussion can take place. I am encouraging everyone to post their comments on such issues here. This will allow me to catch up as soon as I have the time later today, and will hopefully encourage more people to take part in the discussion.

Thank you.

New Directions

It’s been nearly three years since I first discovered Torley Linden’s blog post (humorously titled Samurai Island Pizza Cats) and absolutely fell in love with Samurai Island.  Prior to that, I was just kind of wandering around playing with stuff and exploring this strange and wonderful new Virtual World I had heard about.

During that time, I had tons of fun and had the awesome opportunity to meet some tremendous people.  I’ve learned a lot about topics I never thought I’d be interested in, and have gotten to express a creative side of me that I had never before been aware of. I found the motivation to develop skills that until recently I had never seemed to be able to find the time to work on, and have experienced a lot of personal growth as a result. I even had the amazing opportunity to earn a little money while doing those things. I am truly grateful for those opportunities.

I have had my share of frustrations, too. I have spent thousands of hours working on things that Linden Lab seems to be determined to break on a nearly weekly basis, and have expended a tremendous amount of energy on attempting to compensate for Second Life’s inability to scale properly and perform consistently.

Those things have often left me intensely frustrated and feeling unimportant to the makers of Second Life, but it was always something I would get past relatively quickly. More recently, and most importantly, recent actions by Linden Lab have managed to destroy any remaining bit of faith or goodwill I had toward them.

Until recently, if you wanted to build Virtual World content for others to enjoy, you were very limited in your options. Only Second Life provided the opportunity for just anyone to build nearly anything they wanted, and an open scripting system to make those creations come to life.  Only Second Life provided the economy to make it worthwhile to spend thousands of hours doing so, and only Second Life provided the kind of free-form "do anything you want" world that didn’t have set goals and encouraged community and social interaction.

Until recently, Second Life was "the only game in town" that would have allowed someone like me to experience all of those wonderful things I have listed above.

That may no longer be the case.

Some of you may have already heard of Blue Mars.  Some of you may have even heard me mention that I’ve been a part of the Blue Mars Beta developer program. It is in this direction that I will be focusing all of my new content creation efforts for the foreseeable future.

You may very well be thinking “What is Blue Mars?” Well, that is difficult for someone like me to describe.  Easier to start with what it looks like, I suppose:

 

As for what Blue Mars actually *is*, here’s a quote from the Blue Mars website:

Blue Mars is a free to play massively multiplayer virtual world featuring stunning graphics, realistic characters, and endless social bonding activities. The Blue Mars virtual world is made up of an expanding set of independently operated cities that feature unique themes, activities, and attractions such as shopping, avatar customization, unique personal spaces, and games like dancing, racing, and golf. Cities on Blue Mars are tied together with a unified login system, persistent global Avatar ID, and platform wide participation based reward system that encourages users to explore, play, and make new friends.

Of course, Blue Mars has been generating some intense interest among others with a passion not just for Second Life, but for the amazing possibilities of Virtual Worlds in general, and I’ve found posts by Not Possible in Real Life’s Bettina Tizzy such as this one (for example) to be down-to-earth pragmatic while still recognizing the massive potential that virtual worlds can have:

That Blue Mars will deliver spectacular fidelity, physics and scalability that 6 year old Second Life might not ever be able to attain unless it’s rebuilt from the ground up is not under discussion, but I can’t help but wonder if it will be able to catch up to the amazing content and growing user-base that SL’s residents have come to expect, along with the attending friendships and social, educational and business experiences.

Either way, I am welcoming Blue Mars with open arms. While I applaud the efforts of the open source OpenSim community and want to encourage them to move forward, I will never have enough options, and Blue Mars is exactly that: A very viable option.

It’s too early yet to tell whether Blue Mars is going to be a massive flop or a tremendous success, and certainly too early to tell whether there’s any real future there for me, but I strongly feel that now is the time for me to jump in with both feet and give it my best shot.

That’s not to say that I’m abandoning Samurai Island. I am not. I will absolutely continue to support not only the C:SI customers, but the fabulous C:SI community. I will continue (as much as Linden Lab allows, at any rate) to update my weapons with bug fixes and enhancements. I will continue to work on fun projects for everyone, as much as my time allows.

But I will not be making new content for Second Life for the foreseeable future. I hesitate to say that I won’t ever make new content, because I am too full of anger at Linden Lab right now to even know whether I’d be saying so simply out of spite, but certainly for the time being I feel that it would be a better use of my time and effort to attempt to branch out.

Please pardon the dust

You might have noticed that there’s been a lot of instability and oddness going on with this blog over the last few days.

I am sorry to say that it’s not over yet, I am still in the midst of a major overhaul, and I expect it to continue over the next few days.

I apologize for the inconvenience.

[UPDATE] This blog now uses a new URL.

Please update your bookmarks/subscriptions/etc.

Ugur Tunwarm is a thief

ugur-tunwarm By now anyone who reads this blog or knows me in-world knows this story already, but I’ve received several IMs from people who say that when they went to look, Ugur was not selling a copybot copy of the Wave Katana like I claimed.

When I told Ugur Tunwarm that I had reported him to Linden Lab, within an hour he had removed his profile from search, had uploaded a new version of his infringing product without the sword, and had replaced all of his in-world and XStreetSL vendors.  My best guess is that he did all of this in an effort to appear innocent.

Fortunately for me, I had purchased a copy of this stolen content prior to informing him that he had been caught, so I’ve got plenty of concrete evidence of his theft.

Interestingly enough, he had actually purchased a Wave Katana from me some months prior to me discovering his theft, and according to the C:SI combat database, he’s even used it in duels several times. In light of this, it would be hard to argue that he was unaware of selling stolen content, since as an owner of the Wave Katana he was quite clearly aware of and familiar with the original product.

Below is a picture of the "product", along with the katana from that product.  The XStreetSL product listing at that point described the swords as "Demo Katana", probably because CopyBot cannot steal scripts, so he had to sell an unscripted version. (Click to enlarge):

product-box-properties

Here’s a close-up of the sword itself, notice the distinctive same texture and the menuki (Click to enlarge):

sword-copy-closeup

Compare that to this picture of the Wave Katana:

wave-katana-1

And another picture of the Wave Katana from a slightly different angle:

wave-katana-3

Ugur Tunwarm has made a few of the textures solid black, but there can be absolutely no question that it’s the same weapon.

Apparently Ugur Tunwarm used an alt as his copybot to copy my sword.  If the above pictures weren’t damning enough evidence, inspecting the object shows that every prim in the sword contains the same name as the prims in the Wave Katana :

sword-inspect

Even the object’s Description property is unchanged. The number 1 in the object’s description comes from the fact that the Wave Katana scripts will use the Description property to pass state data between scripts:

sword-properties

I could go on, but I’m not sure I see the point. I can obviously prove quite conclusively that Ugur Tunwarm is a thief, and I still own the infringing product if anyone ever needs concrete proof that they can see with their own eyes.

Hopefully this will explain why people who go to see the stolen content after the fact will see something that might appear to be innocent now, but was at one fact selling stolen content.

Welcome to Google, Ugur Tunwarm.  Linden Lab may not want to protect it’s upstanding content creators, but I can still demonstrate to the world what a thieving slimebag you are.